示例#1
0
        public void PropSubClassArray()
        {
            PropCloneSubNodeModel model = new PropCloneSubNodeModel
            {
                Node = new PropCloneNormalModel()
                {
                    Age = 1, Name = "111"
                }
            };

            SnapshotOperator.MakeSnapshot(model);

            model.Node = new PropCloneNormalModel()
            {
                Age = 2, Name = "222"
            };

            var result = SnapshotOperator.Compare(model);
            var value  = (Dictionary <string, DiffModel>)(result["Node"].Value);

            Assert.NotEqual(model.Node.Name, (string)(value["Name"].Value));
            Assert.NotEqual(model.Node.Age, (int)(value["Age"].Value));
            Assert.Equal("111", (string)(value["Name"].Value));
            Assert.Equal(1, (int)(value["Age"].Value));
        }
示例#2
0
        public void PropSubClassArray()
        {
            PropCloneSubNodeModel model = new PropCloneSubNodeModel();

            model.Node = new PropCloneNormalModel()
            {
                Age = 1, Name = "111"
            };


            var newModel = CloneOperator.Clone(model);


            Assert.Equal(model.Node.Name, newModel.Node.Name);
            Assert.Equal(model.Node.Age, newModel.Node.Age);
        }
示例#3
0
        public void PropSubClassArray()
        {
            PropCloneSubNodeModel model = new PropCloneSubNodeModel();

            model.Node = new PropCloneNormalModel()
            {
                Age = 1, Name = "111"
            };

            CloneBuilder <PropCloneSubNodeModel> .CreateCloneDelegate();

            var newModel = DeepClone <PropCloneSubNodeModel> .Clone(model);


            Assert.Equal(model.Node.Name, newModel.Node.Name);
            Assert.Equal(model.Node.Age, newModel.Node.Age);
        }