Nunit Assert List <someobject>包含唯一值</someobject>

时间:2014-08-05 13:12:48

标签: c# unit-testing nunit assert assertion

假设我们有一个班级

class A
{
int num;
string str;
// more methods and data members
}

在nunit测试中,我们如何在

行中做点什么
List<A> listA = GetUniqueValueList();
CollectionAssert.AllItemsAreUnique(listA, "ListA items should be unique.");

据我了解,AllItemsAreUniqe仅适用于具有值类型的列表。如果说两个A对象具有完全相同的成员,那么这个测试也不会失败。

1 个答案:

答案 0 :(得分:2)

平等取决于您可以覆盖的.Equals()的实施。对于一个复杂的类型,这不会像您想象的那样开箱即用,因此您必须覆盖它以说明您对“平等”的看法。