При использовании BeEquivalentTo
на struct
с два экземпляра по умолчанию сравниваются по семантике значения .
для сравнения структур по их элементам поведение по умолчанию может быть переопределено локально или глобально.
Локально внутри теста:
[TestMethod]
public void Test()
{
subject.Should().BeEquivalentTo(expected,
opt => opt.ComparingByMembers<DataStruct>());
}
Глобально, например, [AssemblyInitialize]
:
[AssemblyInitialize]
public static void AssemblyInitialize(TestContext context)
{
AssertionOptions.AssertEquivalencyUsing(opt => opt.ComparingByMembers<DataStruct>());
}