断言 "at least one item in the result collection matches predicate"
Assert "at least one item in the result collection matches predicate"
我想断言集合中至少有一项与 NUnit 的给定谓词相匹配。我已经断言项目数大于 0,因此足以模仿 LINQ 的 Any()
方法的行为。
我正在寻找类似的东西:
Assert.That(resultEnumerable, Is.Any.Matching(x => x.Property == "x"));
或至少:
Assert.That(resultEnumerable.Select(x => x.Property), Is.Any.EqualTo("x"));
不幸的是,似乎只有 Is.All
约束,没有等效的 Is.Any
- 我错过了什么?
注意:我不希望可读性太差:
Assert.That(resultEnumerable.Any(x => x.Property == "x"), Is.True);
我发现:
Assert.That (resultEnumerable.Select (x => x.Property), Has.Some.EqualTo ("x"));
仍然希望我不再需要 Select()
的解决方案。
其中之一怎么样?
Assert.That (resultEnumerable, Has.Some.Property ("Property").EqualTo ("x"));
Assert.That (resultEnumerable, Has.Some.Matches<X> (x => x.Property == "x"));
我想断言集合中至少有一项与 NUnit 的给定谓词相匹配。我已经断言项目数大于 0,因此足以模仿 LINQ 的 Any()
方法的行为。
我正在寻找类似的东西:
Assert.That(resultEnumerable, Is.Any.Matching(x => x.Property == "x"));
或至少:
Assert.That(resultEnumerable.Select(x => x.Property), Is.Any.EqualTo("x"));
不幸的是,似乎只有 Is.All
约束,没有等效的 Is.Any
- 我错过了什么?
注意:我不希望可读性太差:
Assert.That(resultEnumerable.Any(x => x.Property == "x"), Is.True);
我发现:
Assert.That (resultEnumerable.Select (x => x.Property), Has.Some.EqualTo ("x"));
仍然希望我不再需要 Select()
的解决方案。
其中之一怎么样?
Assert.That (resultEnumerable, Has.Some.Property ("Property").EqualTo ("x"));
Assert.That (resultEnumerable, Has.Some.Matches<X> (x => x.Property == "x"));