问题描述
我创建了以下非常简单的测试,它简化了我在野外遇到的场景。
var actual = new JObject
{
{"prop1","1"},{"prop2","2"},};
var expected = new JObject
{
{"prop1","3"},};
actual.Should().BeEquivalentTo(expected);
我有两个 JObjects,它们在一个键上不同,如果它们不同,我希望测试失败并告诉我区别在哪里。
这通过了,但由于我已经提到的差异,我不希望它通过。我花了很多时间来定制等效性检查,但没有运气。希望有人能指出我忽略的内容。
解决方法
您还可以断言整个字典的相等性,其中键和值的相等性将使用它们的 Equals 实现进行验证。
参考FluentAssertions - Dictionaries
喜欢
actual.Should().Equal(expected);