Gra*_*ton 29 c# nunit unit-testing
我有两个列表,我想检查两个列表是否相同(顺序不重要),以及它是否相同取决于IEqualityComparer
我实现的实例.
理想的情况是我可以使用CollectionAssert.AreEquivalent
Custom IEqualityComparer
.但似乎CollectionAssert.AreEquivalent
不接受任何IEqualityComparer
.
关于如何以简洁和可重复使用的方式做到这一点的任何想法?
Qua*_*ter 36
CollectionAssert.AreEquivalent
实施方式如下:
Assert.That(actual, new CollectionEquivalentConstraint(expected), message, args);
Run Code Online (Sandbox Code Playgroud)
你可以写你的断言方式提供自定义的IEqualityComparer
具有Using
:
Assert.That(actual,
new CollectionEquivalentConstraint(expected).Using(customComparer));
Run Code Online (Sandbox Code Playgroud)
您还可以缩短new CollectionEquivalentConstraint
为Is.EquivalentTo
:
Assert.That(actual, Is.EquivalentTo(expected).Using(customComparer));
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3470 次 |
最近记录: |