遇到以下 MS 单元测试:
[TestMethod]
public void PersonRepository_AddressCountForSinglePerson_IsNotEqualToZero()
{
// Arrange.
Person person;
// Act.
person = personRepository.FindSingle(1);
// Assert.
Assert.AreNotEqual<int>(person.Addresses.Count, 0);
}
在进行断言时,我从未见过泛型的使用。
这就是我写断言的方式:
// Assert.
Assert.AreNotEqual(person.Addresses.Count, 0);
有什么不同?
当我将鼠标悬停在AreNotEqual()
我正在使用的重载上时,该方法正在使用比较两个双精度的重载(不确定为什么没有 int、int 重载)。
如果我确实输入了 in的通用类型参数<int>
,ReSharper 说它是多余的。
所以我的问题是:如果我这样做的方式仍然是类型安全的,为什么要使用泛型断言?