问题标签 [fluent-assertions]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
355 浏览

c# - 流利的断言 ThatAreNotDecoratedWith

我想使用 FluentAssertions 来测试所有没有用 NonActionAttribute 修饰的方法。(这将减少由 T4MVC 作为占位符自动生成的操作方法集。)

我的具体问题是将 MethodInfoSelector 方法链接在一起。我想写这样的东西:

转换失败,或者如果我将结果转换为 IEnumberable,我无法链接其他 MethodInfoSelector 方法。

对于如何生成 MethodInfoSelector 或针对列出没有特定属性的方法的潜在问题的不同方法,我将不胜感激。

0 投票
3 回答
3752 浏览

c# - 比较时如何使 FluentAssertions ShouldBeEquivalentTo 检查类型?

我有 2 个字典,我希望内容不相等,因为字典包含不同类型的值。但是以下测试通过

如果这是预期的行为,我该如何设置一个流畅的断言规则来检查类型是否匹配?

我已经使用 MatchingRule 和 AssertionRule 进行了调查,但在这两种情况下,我似乎都无法访问主题的原始类型和预期。似乎主题已经转换为预期的类型。即,在上面的示例中,第一个字典中的 updateInterval 已经被转换为字符串,以便与第二个字典进行比较。

谢谢你的帮助,
瑞秋

0 投票
1 回答
212 浏览

c# - 如何检查是否可以在 Fluent Assertion 中使用 ContainValue 验证类型类的字典

我正在尝试将自定义类类型的字典检查为值。

我想知道在 Fluent Assertion 中使用 ContainValue 在 Dictionary 中搜索值的方法是否正确。

这是代码

员工类

当我执行这段代码时,我得到了如图所示的异常

**

**

请帮助我了解我在这里做错了什么。

谢谢,

0 投票
1 回答
254 浏览

fluent-assertions - FluentAssertions 升级后编译错误

我已将我的项目升级到最新的 FluentAssertions 并在以下行出现奇怪的编译错误:

错误是:

“System.Array”不包含“Should”的定义,并且找不到接受“System.Array”类型的第一个参数的扩展方法“Should”(您是否缺少 using 指令或程序集引用?)

0 投票
3 回答
8265 浏览

c# - 流畅的断言:在 DateTime 属性的集合上使用 BeCloseTo

我正在处理许多项目,每个项目都包含一个 DateProcessed 属性(一个可为空的 DateTime),并希望断言该属性设置为当前日期。当它通过处理程序时,日期都略有不同。

我想测试所有 DateProcessed 属性是否具有相对性(100 毫秒)最近的 DateTime。

Fluent Assertions 具有 .BeCloseTo 方法,该方法非常适用于单个项目。但我想将它用于整个系列。但是在查看集合时,它不能通过 Contains() 获得。

一个简化的例子...

0 投票
2 回答
69 浏览

c# - NHibernate 在 Nunit 测试中的奇怪失败

用 NUnit 和 FluentAssertion 运行一个简单的测试我有这个失败的消息:

但我没有看到差异。这可能是失败的原因?

这是测试方法

ID = 1 的角色是我直接在数据库中手写的

这是我与 NHibernate 一起使用的基础存储库

0 投票
2 回答
961 浏览

c# - 在 FluentAssertions 中,为什么应该是方法而不是属性?

在 FluentAssertions 中,您可以以各种格式提出各种声明。

都是有效的断言。

为什么是Should方法而不是属性?我还没有看到任何Should带有参数的例子,所以在我看来它很容易成为一个属性。

你也可以断言

这里,And是属性而不是方法。不应该AndShould每个都是相同类型的元素(方法/属性)?

TL;DRShould在 FluentAssertions 中创建方法而不是属性 的设计选择背后是否有正当理由?

0 投票
3 回答
7959 浏览

c# - 流畅的断言:断言一个或另一个值

使用流利的断言,我想断言给定的字符串包含两个字符串之一:

只有当这两个值都不包含时,断言才应该失败。由于没有运算符,这不起作用(甚至无法编译)Or()

这就是我现在的做法:

这是冗长的,并且必须手动创建“因为”参数才能获得有意义的输出。

有没有办法以更易读的方式做到这一点?解决方案还应适用于其他流畅的断言类型,例如Be()HaveCount()...

我在 .NET 3.5 上使用 FluentAssertions 版本 2.2.0.0,如果这很重要的话。

0 投票
2 回答
2993 浏览

fluent-assertions - 如何将两个 MemoryStream 与 FluentAssertions 进行比较

使用FluentAssertion 3.1.229,你如何比较两个不同的内容MemoryStream

写入actualStream.Should().Be(expectedStream);会产生以下错误:

是的,我可以使用 NUnit Assert.That(actualStream, Is.EqualTo(expectedStream));,但可以使用 FluentAssertions 吗?

谢谢。

0 投票
2 回答
79 浏览

unit-testing - 如何测试我的工厂是否正确绑定?

使用Ninject,我有以下内容并希望使用FluentAssertions进行测试:

有什么好的方法可以测试工厂是否真的绑定正确?