Я использую инфраструктуру XUnit для проверки кода на C#.XUnit Assertion для проверки равенства объектов
Есть ли какой-либо метод assert, доступный в этой структуре, который выполняет сравнение объектов? Мое намерение состоит в том, чтобы проверить равенство каждой из публичных и частных переменных объекта.
Я попробовал те альтернативы, но редко это работает:
1) bool IsEqual = (Obj1 == Obj2)
2) Assert.Same(Obj1, Obj2) which I couldnt understand what happens internally
Существует «глубокое сравнение» в xUnit. Вам нужно будет реализовать IEquatable для ваших объектов, а затем Assert.Equals будет работать. –
seldary
'Assert.Same()' сравнивается по ссылке; он утверждает, что «Obj1» и «Obj2» являются ** одинаковым ** объектом, а не просто ** выглядят ** одинаково. – TeaDrivenDev