c# - 对集合使用 CollectionAssert.Contains

标签 c# .net unit-testing nunit

我想写这样的东西:

var list = new List<int>(){1,2,3};
var bigList = new List<int>(){1,2,3,4,5,6,7,8,9};

CollectionAssert.Contains(bigList, list);

我可能会收到类似于以下内容的错误:

 Expected: collection containing < 1,2,3 >
 But was:  < 1,2,3,4,5,6,7,8,9 >

是否可以对另一个集合使用 contains 方法?

最佳答案

签名是

   CollectionAssert.Contains (ICollection collection, Object element) 

它检查 element(单数)是否在 collection 中。
它不是检查子列表的方法。

你可能应该使用:

    CollectionAssert.IsSubsetOf (ICollection subset, ICollection superset) 

关于c# - 对集合使用 CollectionAssert.Contains,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9904409/

相关文章:

c# - 使用另一个 Windows 帐户连接 SQL Server 的连接字符串

c# - 对与文件系统的交互进行单元测试的好方法是什么?

.net - mscorlib.dll 中出现“System.BadImageFormatException”

xcode - OCUnit 测试失败,但 Xcode Log Navigator 显示没有问题

c# - 如果我可以只定义一个变量,为什么要使用 It.is<> 或 It.IsAny<>?

c# - 无法捕获 MSScriptControl 的 Eval 函数中引发的自定义异常

c# - 在 try 语句内调用 Monitor.Enter 与在 try 语句外调用它

c# - 以前工作的 REGEX 匹配现在失败

c# - 获取子字符串c#的特定单词后的文本

unit-testing - 单元测试设备驱动程序