public void ReturnsObject_WithValueOfNonDefaultNewValue()
            {
                var originalCustomer = new TestCustomerWithDeltaObjectIgnoreOnDefaultAttribute
                {
                    FirstName = "original first name",
                    LastName  = "original last name"
                };

                var newCustomer = new TestCustomerWithDeltaObjectIgnoreOnDefaultAttribute
                {
                    LastName = "new last name"
                };

                var deltaObjects = DeltaObjectFromObjectGenerator.GetDeltaObjects(originalCustomer, newCustomer);

                Assert.Equal(2, deltaObjects.Count);
                Assert.Null(deltaObjects.First(o => o.PropertyName ==
                                               nameof(TestCustomerWithDeltaObjectIgnoreOnDefaultAttribute.FirstName)).NewValue);
                Assert.Equal(originalCustomer.FirstName, deltaObjects.First(o => o.PropertyName ==
                                                                            nameof(TestCustomerWithDeltaObjectIgnoreOnDefaultAttribute.FirstName)).OriginalValue);
                Assert.Equal(originalCustomer.LastName, deltaObjects.First(o => o.PropertyName ==
                                                                           nameof(TestCustomerWithDeltaObjectIgnoreOnDefaultAttribute.LastName)).OriginalValue);
                Assert.Equal(newCustomer.LastName, deltaObjects.First(o => o.PropertyName ==
                                                                      nameof(TestCustomerWithDeltaObjectIgnoreOnDefaultAttribute.LastName)).NewValue);
            }
            public void ReturnsObject_WithoutValueToIgnoreOnDefault()
            {
                var originalCustomer = new TestCustomerWithDeltaObjectIgnoreOnDefaultAttribute
                {
                    FirstName = "original first name",
                    LastName  = "original last name"
                };

                var newCustomer = new TestCustomerWithDeltaObjectIgnoreOnDefaultAttribute();

                var deltaObjects = DeltaObjectFromObjectGenerator.GetDeltaObjects(originalCustomer, newCustomer);

                Assert.Single(deltaObjects);
                Assert.Equal(nameof(TestCustomerWithDeltaObjectIgnoreOnDefaultAttribute.FirstName),
                             deltaObjects.First().PropertyName);
                Assert.Equal(nameof(TestCustomerWithDeltaObjectIgnoreOnDefaultAttribute.FirstName),
                             deltaObjects.First().PropertyAlias);
                Assert.Equal(originalCustomer.FirstName, deltaObjects.First().OriginalValue);
                Assert.Null(deltaObjects.First().NewValue);
            }