public void CompareObjectsTest_ComplexArray_NotEqual()
        {
            var subA1 = new ClassWithFieldsTest {
                a = 1, b = "test", c = 2
            };
            var subB1 = new ClassWithFieldsTest {
                a = 1, b = "test", c = 2
            };
            var subA2 = new ClassWithFieldsTest {
                a = 2, b = "testt", c = 3
            };
            var subB2 = new ClassWithFieldsTest {
                a = 2, b = "differencehere", c = 3
            };

            var a = new ClassWithComplexArrayTest {
                a = new[] { subA1, subA2 }
            };
            var b = new ClassWithComplexArrayTest {
                a = new[] { subB1, subB2 }
            };

            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");
        }
        public void CompareObjects_Fields_NotEqual()
        {
            var a = new ClassWithFieldsTest {
                a = 1, b = "test", c = 2
            };
            var b = new ClassWithFieldsTest {
                a = -1, b = "testttt", c = 3
            };

            a.CompareObjects(b).Should().BeFalse("objects have different content");
        }
        public void CompareObjects_Fields_Equal()
        {
            var a = new ClassWithFieldsTest {
                a = 1, b = "test", c = 2
            };
            var b = new ClassWithFieldsTest {
                a = 1, b = "test", c = 2
            };

            a.CompareObjects(b).Should().BeTrue("objects have same content");
        }
        public void CompareObjectsOnlyFieldsTest_NullValue_Equal()
        {
            var a = new ClassWithFieldsTest {
                a = 1, b = null, c = 2
            };
            var b = new ClassWithFieldsTest {
                a = -1, b = null, c = 3
            };

            a.CompareObjectsOnlyFields(b).Should().BeFalse("objects have different content");
        }