public void Poly_object_copy_2_objects_test() { var catBooking = new KennelBooking() { Id = "123" }; var cat = new Cat() { Name = "Whiskers", RequiresHeatPad = true }; catBooking.Animal = cat; var dogBooking = new KennelBooking() { Id = "123" }; var dog = new Dog() { Name = "Skippy", NumberOfWalksPerDay = 2 }; dogBooking.Animal = dog; var sut = new ShadowCopier(); var result1 = sut.Copy(catBooking); var result2 = sut.Copy(dogBooking); Assert.IsTrue(new Comparer().AreEqual(catBooking, result1)); Assert.IsTrue(new Comparer().AreEqual(dogBooking, result2)); Assert.IsFalse(new Comparer().AreEqual(catBooking, result2)); }
public object TrackInstance(object instance) { var entry = new TrackingEntry() { ShadowCopy = _copier.Copy(instance), Instance = instance }; _trackedEntries.Add(instance, entry); return(instance); }
public void LittleMoreComplexCopy() { var p = new Person("Dave") { Id = "1337" }; var p2 = new Person("Ben") { Id = "1332" }; var b = new Book("This is a test", p, 170); b.AddEdition(new Edition("10th year limited Edition", EditionType.HardBack) { ReleaseDate = DateTime.Now }); b.AddContributor(p2, ContributorType.Editor); var sut = new ShadowCopier(); var result = sut.Copy(b); Assert.IsTrue(new Comparer().AreEqual(b, result)); }
public void SimpleCopy() { var p = new Person("Dave") { Id = "1337" }; var sut = new ShadowCopier(); var result = sut.Copy(p); Assert.IsTrue(new Comparer().AreEqual(p, result)); }
public void List_of_strings() { var data = new SecurityProfile(); data.AddSecurityId("t1"); var sut = new ShadowCopier(); var result = sut.Copy(data); Assert.IsTrue(new Comparer().AreEqual(data, result)); }
public void Poly_object_initial_copy_test() { var booking = new KennelBooking() { Id = "123" }; var cat = new Cat() { Name = "Whiskers", RequiresHeatPad = true }; booking.Animal = cat; var sut = new ShadowCopier(); var result = sut.Copy(booking); Assert.IsTrue(new Comparer().AreEqual(booking, result)); }