我正在努力对枚举中缺少特定项目做出断言。具体来说,这就是我的测试结果:
// Take an item from a queue of scheduled items...
ItemQueue pendingQueue = schedule.PendingItems; // PendingItems is an IEnumerable<int>
int item = pendingQueue.FirstItem;
// ...process the item...
processor.DoSomethingWith(item);
// ...and the schedule must not contain the item anymore:
Assert.That(schedule.PendingItems, Does.Not.Contain(item));
当然, Does.Not.Contain 不是有效的nUnit约束。如何用有效的流利语法表达它?
答案 0 :(得分:48)
Assert.That(schedule.PendingItems, Has.No.Member(item))
仅限NUnit 2.4 / 2.5
答案 1 :(得分:12)
使用CollectionAssert方法:
CollectionAssert.DoesNotContain(schedule.PendingItems, item);
答案 2 :(得分:5)
如果您使用的是NUnit 2.4 / 2.5,可以查看collection constraints。