平等比较如何为Func
工作?我已经减少了我的问题的复杂性,这些单元测试:Func NUnit平等比较
[Test]
public void Will_Pass()
{
Func<string> func =() => "key";
Assert.That(func, Is.EqualTo(func));
}
[Test]
public void Will_Fail()
{
Func<string> funcA =() => "key";
Func<string> funcB =() => "key";
Assert.That(funcA, Is.EqualTo(funcB));
}
我需要测试 - 成功断言 - 一个Func
的一个实例是等于另一个实例。所以我基本上需要一种方法来使失败的测试通过。
有没有办法做到这一点,而无需创建自定义类型并覆盖Equals()
?
也许用表达式树而不是'Func'这可能会更容易。 –
Oded
请参阅[ExpressionEqualityComparer.cs](https://source.db4o.com/db4o/trunk/db4o.net/Db4objects.Db4o.Linq/Db4objects.Db4o.Linq/Expressions/) –
@ L.B谢谢;表达式方法具有价值,但我将按照John的建议测试输出。 – Nick