public void CompareObjectsTest_ArrayAndOtherValuesAfter_NotEqual()
        {
            var a = new ClassWithArrayTest {
                a = new[] { 1, 2, 3 }, y = 1
            };
            var b = new ClassWithArrayTest {
                a = new[] { 1, 2, 3 }, y = 2
            };

            a.CompareObjectsOnlyFields(b).Should().BeFalse();
        }
        public void CompareObjectsTest_ArrayNullFirst_NotEqual()
        {
            var a = new ClassWithArrayTest {
                a = null
            };
            var b = new ClassWithArrayTest {
                a = new[] { 1, 2, 3 }
            };

            a.CompareObjectsOnlyFields(b).Should().BeFalse();
        }
        public void CompareObjectsTest_ArrayAndOtherValuesBefore_Equal()
        {
            var a = new ClassWithArrayTest {
                a = new[] { 1, 2, 3 }, x = 1
            };
            var b = new ClassWithArrayTest {
                a = new[] { 1, 2, 3 }, x = 1
            };

            a.CompareObjectsOnlyFields(b).Should().BeTrue();
        }
        public void CompareObjectsTest_Array_NotEqual()
        {
            var a = new ClassWithArrayTest {
                a = new[] { 1, 2, 3 }
            };
            var b = new ClassWithArrayTest {
                a = new[] { 1, 1, 3 }
            };

            a.CompareObjects(b).Should().BeFalse("Arrays have not same content");
            a.CompareObjectsOnlyFields(b).Should().BeFalse("Classes provides field Arrays but Arrays have not same content");
        }