Как сравнить 2 списка, содержащие значения JSON в C # для модульного тестирования - PullRequest
0 голосов
/ 19 октября 2019

Как сравнить 2 списка в c #? Данные первого списка

DBvalues = [{ "_id" : ObjectId("5d98298f9110f5f13812f3c1"), "PartName" : null, "MAP" : null, "MPN" : null, "IsActive" : true, "Gtin" : "ab085347019069" }, { "_id" : ObjectId("5d98298f9110f5f13812f3c0"), "PartName" : null, "MAP" : null, "MPN" : null, "IsActive" : true, "Gtin" : "085347014064" }]

Данные второго списка

actualExcelvalues = [{ "_id" : ObjectId("5d98298f9110f5f13812f3c0"), "PartName" : null, "MAP" : null, "MPN" : null, "IsActive" : true, "Gtin" : "085347014064" }, { "_id" : ObjectId("5d98298f9110f5f13812f3c1"), "PartName" : null, "MAP" : null, "MPN" : null, "IsActive" : true, "Gtin" : "ab085347019069" }]

независимо от их порядка / индекса.

1 Ответ

1 голос
/ 19 октября 2019

Если вы имеете в виду строки, то AreEqual работает.

Если вы имеете в виду объекты, то моя методика тестирования состоит в том, чтобы сериализовать оба с отступом json и сравнить их. Грубый, но делает свою работу.


В моей текущей настройке у меня есть статический AreEqual<T>(T expected, T actual), который сериализует оба, а затем сравнивает строку за строкой, чтобы показать лучший результат при сбое сравнения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...