public void TestDerivedCopy() { IdObject idobj1 = new IdObject { Id = 1}; IdObject idobj2 = (IdObject)CheckDerivedCopy(idobj1); idobj2.Id = idobj2.Id + 1; Assert.AreNotEqual(idobj2,idobj1); NameObject nameObj1 = new NameObject { Name = "cheka"}; NameObject nameObj2 = (NameObject)CheckDerivedCopy(nameObj1); nameObj2.Name = "NewName"; Assert.AreNotEqual(nameObj2,nameObj1); }