unit-testing - IEnumerables `Assert.AreEqual` 和 `CollectionAssert.AreEqual` 之间的 Nunit 差异

标签 unit-testing nunit ienumerable

在Nunit中,有什么区别

Assert.AreEqual(IEnumerable<T>, IEnumerable<T>)

CollectionAssert.AreEqual(IEnumerable<T>, IEnumerable<T>)

最佳答案

没有过载Assert.AreEqual(IEnumerable<T>, IEnumerable<T>) ,仅 Assert.AreEqual(object, object) 。至少对于 nunit 2.5.10 它们的实现是相同的:

CollectionAssert.cs

public class CollectionAssert
{
    public static void AreEqual(IEnumerable expected, IEnumerable actual)
    {
      Assert.That((object) actual, (IResolveConstraint) new EqualConstraint((object) expected));
    }
}

断言.cs

public class Assert
{
    public static void AreEqual(object expected, object actual)
    {
      // EqualConstraint EqualTo(object expected)
      Assert.That(actual, (IResolveConstraint) Is.EqualTo(expected), (string) null, (object[]) null);
    }
}

关于unit-testing - IEnumerables `Assert.AreEqual` 和 `CollectionAssert.AreEqual` 之间的 Nunit 差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11862388/

相关文章:

c# - 挣扎于最小起订量 : The following setups were not matched

c# - 为什么使用 .AsEnumerable() 而不是强制转换为 IEnumerable<T>?

c# - IEnumerable 中的项目不等于 List 中的项目

nunit - NUnit Gui Runner 去哪儿了?版本3.0.1

unit-testing - 最喜欢的.NET单元测试框架

c# - 使用 yield 返回处理 Enumerable 对象的正确模式是什么?

java - Android 类的 Mockito ClassNotFoundException

c# - 如何模拟未声明为虚拟的外部类中的方法

java - 我如何模拟服务以抛出异常返回列表的方法?

c# - .Net 项目的 TeamCity 增量测试