Exemple #1
0
        public void PatchApplyingMappingFunction()
        {
            DeltaObjectMappingConfig <TestObject, TestObject> .GlobalConfig()
            .Map(p => p.DateTime1, t => t.DateTime1, (value) => value.AddDays(1))
            .Map(p => p.Int1, t => t.Int1, (value) => value + 2);

            var jsonString = "{ int1: 1, string1: 'val1', dateTime1: '2018-12-04' }";
            var testObject = new TestObject();

            var targetObject = new TestObject();

            var delta = JsonConvert.DeserializeObject <DeltaFor <TestObject> >(jsonString);

            delta.Patch(targetObject);

            targetObject.Int1.Should().Be(3);
            targetObject.String1.Should().Be("val1");
            targetObject.DateTime1.Should().Be(new DateTime(2018, 12, 5));
        }
Exemple #2
0
        public void PatchIgnoringNonMappedProperties()
        {
            DeltaObjectMappingConfig <TestObject, TestObject> .GlobalConfig()
            .Map(p => p.DateTime1, t => t.DateTime1)
            .Map(p => p.Int1, t => t.Int1)
            .IgnoreNonMapped();

            var jsonString = "{ int1: 1, string1: 'val1', dateTime1: '2018-12-04' }";
            var testObject = new TestObject();

            var targetObject = new TestObject();

            var delta = JsonConvert.DeserializeObject <DeltaFor <TestObject> >(jsonString);

            delta.Patch(targetObject);

            targetObject.Int1.Should().Be(1);
            targetObject.String1.Should().Be(default(string));
            targetObject.DateTime1.Should().Be(new DateTime(2018, 12, 4));
        }
Exemple #3
0
        public void PatchWithMappings()
        {
            DeltaObjectMappingConfig <TestObject, TestObject2> .GlobalConfig()
            .Map(p => p.Int1, t => t.Int2)
            .Map(p => p.String1, t => t.String2)
            .Map(p => p.Bool1, t => t.Bool3);

            var jsonString = "{ int1: 1, string1: 'val1', bool1: true }";
            var testObject = new TestObject();

            var targetObject = new TestObject2();

            var delta = JsonConvert.DeserializeObject <DeltaFor <TestObject> >(jsonString);

            delta.Patch(targetObject);

            targetObject.Int2.Should().Be(1);
            targetObject.String2.Should().Be("val1");
            targetObject.Bool3.Should().Be(true);
        }
Exemple #4
0
        public void PatchIgnoringProperties()
        {
            DeltaObjectMappingConfig <TestObject, TestObject2> .GlobalConfig()
            .Map(p => p.String1, t => t.String2)
            .Ignore(p => p.Int1)
            .Ignore(p => p.Bool1)
            .Ignore(p => p.DateTime1);

            var jsonString = "{ int1: 1, string1: 'val1', dateTime1: '2018-12-04' }";
            var testObject = new TestObject();

            var targetObject = new TestObject2();

            var delta = JsonConvert.DeserializeObject <DeltaFor <TestObject> >(jsonString);

            delta.Patch(targetObject);

            targetObject.Int1.Should().Be(default(int));
            targetObject.String2.Should().Be("val1");
            targetObject.DateTime1.Should().Be(default(DateTime));
        }
Exemple #5
0
 public void Dispose()
 {
     DeltaObjectMappingConfig.ClearMappings();
 }
Exemple #6
0
 public DeltaForTests()
 {
     DeltaObjectMappingConfig.ClearMappings();
 }