public void ClassArray() { FieldCloneClassArrayModel model = new FieldCloneClassArrayModel { Models = new FieldCloneNormalModel[10] }; for (int i = 0; i < 10; i++) { model.Models[i] = new FieldCloneNormalModel() { Age = i, Name = i.ToString() }; } SnapshotOperator.MakeSnapshot(model); for (int i = 5; i < 10; i++) { model.Models[i] = new FieldCloneNormalModel() { Age = i + 100, Name = (i + 100).ToString() }; } var reuslt = SnapshotOperator.Compare(model); var value = (HashSet <FieldCloneNormalModel>)reuslt["Models"].Value; int temp = 5; foreach (var item in value) { Assert.Equal(temp.ToString(), item.Name); Assert.Equal(temp, item.Age); temp++; } }
public void ClassArray() { FieldCloneClassArrayModel model = new FieldCloneClassArrayModel(); model.Models = new FieldCloneNormalModel[10]; for (int i = 0; i < 10; i++) { model.Models[i] = new FieldCloneNormalModel() { Age = i, Name = i.ToString() }; } var newModel = CloneOperator.Clone(model); for (int i = 0; i < 10; i++) { Assert.Equal(model.Models[i].Name, newModel.Models[i].Name); Assert.Equal(model.Models[i].Age, newModel.Models[i].Age); } }
public void ClassArray() { FieldCloneClassArrayModel model = new FieldCloneClassArrayModel(); model.Models = new FieldCloneNormalModel[10]; for (int i = 0; i < 10; i++) { model.Models[i] = new FieldCloneNormalModel() { Age = i, Name = i.ToString() }; } CloneBuilder <FieldCloneClassArrayModel> .CreateCloneDelegate(); var newModel = DeepClone <FieldCloneClassArrayModel> .Clone(model); for (int i = 0; i < 10; i++) { Assert.Equal(model.Models[i].Name, newModel.Models[i].Name); Assert.Equal(model.Models[i].Age, newModel.Models[i].Age); } }