public void Should_not_be_equal_when_data_have_not_same_structure() { var lhs = new NamedContentData() .AddField("field1", new ContentFieldData() .AddValue("iv", 2)) .AddField("field2", new ContentFieldData() .AddValue("iv", 2)); var rhs = new NamedContentData() .AddField("field1", new ContentFieldData() .AddValue("en", 2)) .AddField("field3", new ContentFieldData() .AddValue("iv", 2)); Assert.False(lhs.Equals(rhs)); Assert.False(lhs.Equals((object)rhs)); Assert.NotEqual(lhs.GetHashCode(), rhs.GetHashCode()); }