FluentAssertion-向if语句添加断言

时间:2018-11-25 00:14:20

标签: c# unit-testing nunit assertion fluent-assertions

我有以下Fluent断言,想在if语句中输入。我收到一条错误消息,说我无法将类型隐式转换为bool。

我尝试显式转换它,但仍然出现错误,提示无法将类型转换为bool。

actors.Cast.Should().Contain(actor => actor.Name == "Emilia Clark");

检查以上陈述是否正确的最佳方法是什么?

2 个答案:

答案 0 :(得分:6)

  

检查以上陈述是否正确的最佳方法是什么?

什么都不做。

如果不正确,则测试将失败,因为它将引发异常。

//... Code before

//Assert
actors.Cast.Should().Contain(actor => actor.Name == "Emilia Clark");

//...if we reach this far it is true. Carry on.

//...other code

答案 1 :(得分:1)

我认为“发布”是IEnumerable 。您可以使用Linq“ .Any(...)”。

if (Cast.Any(actor => actor.Name == "Emilia Clark")) {...}