public void ReturnsEmptyList_WhenNoDeltas() { var originalCustomer = new TestCustomerWithEnum { SomeEnum = TestEnum.Nothing, FirstName = "neat", LastName = "name", Age = 40, DateOfBirth = new DateTime(1979, 12, 8), Account = new TestAccount() }; var newCustomer = new TestCustomerWithEnum { SomeEnum = TestEnum.Nothing, FirstName = "neat", LastName = "name", Age = 40, DateOfBirth = new DateTime(1979, 12, 8), Account = new TestAccount { Balance = 23 } }; var deltaObjects = DeltaObjectFromObjectGenerator.GetDeltaObjects(originalCustomer, newCustomer); Assert.NotNull(deltaObjects); Assert.IsType <List <DeltaObject> >(deltaObjects); Assert.Empty(deltaObjects); }
public void DetectsDelta_WhenPropertyIsEnum() { var originalCustomer = new TestCustomerWithEnum { Age = 40, SomeEnum = TestEnum.Nothing }; var newCustomer = new { Age = 41, SomeEnum = TestEnum.Something }; var newCustomerJObj = JObject.FromObject(newCustomer); var deltaGroup = DeltaObjectFromJObjectGenerator.GetDeltaObjects(originalCustomer, newCustomerJObj); Assert.NotNull(deltaGroup); Assert.Equal(GroupValueConversionStatus.NoneFailed, deltaGroup.ValueConversionStatus); Assert.Empty(deltaGroup.DeltaObjectsValueConversionFail); Assert.Equal(2, deltaGroup.DeltaObjects.Count); Assert.Equal(ValueConversionStatus.Success, deltaGroup.DeltaObjects.First(o => o.PropertyName == nameof(TestCustomerWithEnum.Age)).ValueConversionStatus); Assert.Equal(ValueConversionStatus.Success, deltaGroup.DeltaObjects.First(o => o.PropertyName == nameof(TestCustomerWithEnum.SomeEnum)).ValueConversionStatus); Assert.Equal(newCustomer.Age, deltaGroup.DeltaObjects.First(o => o.PropertyName == nameof(TestCustomerWithEnum.Age)).NewValue); Assert.Equal(TestEnum.Something, deltaGroup.DeltaObjects.First(o => o.PropertyName == nameof(TestCustomerWithEnum.SomeEnum)).NewValue); }
public void ReturnsEnumDelta_WhenPropertyHasEnumDelta() { var originalCustomer = new TestCustomerWithEnum { SomeEnum = TestEnum.Nothing }; var newCustomer = new TestCustomerWithEnum { SomeEnum = TestEnum.Something }; var deltaObjects = DeltaObjectFromObjectGenerator.GetDeltaObjects(originalCustomer, newCustomer); Assert.Single(deltaObjects); }