コード例 #1
0
        public void Normal()
        {
            FieldCloneNormalModel model = new FieldCloneNormalModel
            {
                Age   = 1000,
                Name  = "ababab",
                Timer = DateTime.Now,
                money = 100000,
                Flag  = CloneEnum.A,
                Title = false,
                Id    = 100000
            };

            SnapshotOperator.MakeSnapshot(model);
            model.Age   = 1001;
            model.Name  = "hahaha";
            model.Flag  = CloneEnum.B;
            model.Title = true;
            var reuslt = SnapshotOperator.Compare(model);


            Assert.NotEqual(model.Age, (int)(reuslt["Age"].Value));
            Assert.NotEqual(model.Title, (bool)(reuslt["Title"].Value));
            Assert.NotEqual(model.Name, (string)(reuslt["Name"].Value));
            Assert.NotEqual(model.Flag, (CloneEnum)(reuslt["Flag"].Value));


            Assert.Equal(1000, (int)(reuslt["Age"].Value));
            Assert.False((bool)(reuslt["Title"].Value));
            Assert.Equal("ababab", (string)(reuslt["Name"].Value));
            Assert.Equal(CloneEnum.A, (CloneEnum)(reuslt["Flag"].Value));
        }
コード例 #2
0
ファイル: DynamicCloneTest.cs プロジェクト: iamshen/Natasha
        public void Normal()
        {
            FieldCloneNormalModel model = new FieldCloneNormalModel();

            model.Age   = 1000;
            model.Name  = "ababab";
            model.Timer = DateTime.Now;
            model.money = 100000;
            model.Flag  = CloneEnum.A;
            model.Title = false;
            model.Id    = 100000;

            var newModel = CloneOperator.Clone(model);

            Assert.Equal(model.Id, newModel.Id);
            Assert.Equal(model.Title, newModel.Title);
            Assert.Equal(model.money, newModel.money);
            Assert.Equal(model.Timer, newModel.Timer);
            Assert.Equal(model.Age, newModel.Age);
            Assert.Equal(model.Name, newModel.Name);
        }
コード例 #3
0
        public void Normal()
        {
            FieldCloneNormalModel model = new FieldCloneNormalModel();

            model.Age   = 1000;
            model.Name  = "ababab";
            model.Timer = DateTime.Now;
            model.money = 100000;
            model.Flag  = CloneEnum.A;
            model.Title = false;
            model.Id    = 100000;


            CloneBuilder <FieldCloneNormalModel> .CreateCloneDelegate();

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

            Assert.Equal(model.Id, newModel.Id);
            Assert.Equal(model.Title, newModel.Title);
            Assert.Equal(model.money, newModel.money);
            Assert.Equal(model.Timer, newModel.Timer);
            Assert.Equal(model.Age, newModel.Age);
            Assert.Equal(model.Name, newModel.Name);
        }