goo*_*gic 8 linq nunit unit-testing
我有一个名为RenderContent的方法返回object[]
在我的单元测试中,我需要断言这个数组不包含任何类型的对象VerifyRequest
目前,我正在使用以下Assert声明.还有什么更简洁的吗?
Assert.That(
domain.RenderContent().OfType<VerifyRequest>().Count(),
Is.EqualTo(0)
);
Run Code Online (Sandbox Code Playgroud)
我更喜欢使用流利的语法.另请注意,RenderContentobject[]不会返回IQueryable<object>.
Mar*_*atz 14
如果您使用的是NUnit 2.5,则可以使用以下内容:
Assert.That(domain.RenderContent(), Has.None.InstanceOf<VerifyRequest>());
Run Code Online (Sandbox Code Playgroud)
但我不确定其他单元测试框架是否支持这种断言风格.
Mar*_*ann 12
虽然我不知道IsFalse断言的确切NUnit语法,但最适合这种测试的是Any扩展方法:
Assert.IsFalse(domain.RenderContent().OfType<VerifyRequest>().Any());
Run Code Online (Sandbox Code Playgroud)
使用该Count方法可能很诱人,但Any效率更高,因为它会在第一次出现时中断.