public void _0003_ShallowCopy() { MockClass1 source = new MockClass1().Default(); MockClass1 target = MockClass1.DeepCopy(source); Assert.AreNotEqual(source.Hasi, target.Hasi); Assert.AreEqual(source.CarType, target.CarType); Assert.AreEqual(source.CarColor, target.CarColor); Assert.AreEqual(source.TestHandler, target.TestHandler); /*A MemberwiseClone-tól eltérően, ÚJ PÉLDÁNY!!! A kettő nemugyan az!!!*/ Assert.AreNotEqual(source.TestItems.GetHashCode(), target.TestItems.GetHashCode()); Assert.AreEqual(source.TestItems[0].ItemName, target.TestItems[0].ItemName); /*Ezek már nem ugyan azok!*/ Assert.AreNotEqual(source.TestItems[0].Hasi, target.TestItems[0].Hasi); }
public void _0002_MemberwiseClone() { MockClass1 source = new MockClass1().Default(); MockClass1 target = null; target = source.Clone() as MockClass1; Assert.AreEqual(source.CarType, target.CarType); Assert.AreEqual(source.CarColor, target.CarColor); Assert.AreNotEqual(source.Hasi, target.Hasi); /*NEM ÚJ PÉLDÁNY!!! A kettő ugyan az!!!*/ Assert.AreEqual(source.TestItems.GetHashCode(), target.TestItems.GetHashCode()); /*Mivel targert refencia ugyan az innentől kezdve minden ugyan az... */ Assert.AreEqual(source.TestItems[0].ItemName, target.TestItems[0].ItemName); Assert.AreEqual(source.TestItems[0].Hasi, target.TestItems[0].Hasi); }
public void _0001_ManualCopyTo() { MockClass1 source = new MockClass1().Default(); MockClass1 target = new MockClass1(); source.CopyTo(target); Assert.AreNotEqual(source.Hasi, target.Hasi); Assert.AreEqual(source.TestItems[0].ItemName, target.TestItems[0].ItemName); /* Nem azonos a két lista mivel source és target két különböző példány, * nem rontom el a referenciát másoláskor a target példányba másolom az új értékeket.*/ Assert.AreNotEqual(source.TestItems.GetHashCode(), target.TestItems.GetHashCode()); /*Nem azons a két objektum mivel a copy-ban én hoztam létre új elemet*/ Assert.AreNotEqual(source.TestItems[0].Hasi, target.TestItems[0].Hasi); }
public void ResolveWithInterface() { container.Register <IMockClass1, MockClass1>(); container.Register <IMockClass2, MockClass2>(); container.Register <IMockClass3, MockClass3>(); MockClass1 mock1 = container.Resolve <IMockClass1>() as MockClass1; MockClass2 mock2 = container.Resolve <IMockClass2>() as MockClass2; MockClass3 mock3 = container.Resolve <IMockClass3>() as MockClass3; // Check that contructors have only been called once. Assert.AreEqual(1, MockClass1.constructorCalls); Assert.AreEqual(1, MockClass2.constructorCalls); Assert.AreEqual(1, MockClass3.constructorCalls); // Check that references in obejcts has been set with the correct references. Assert.IsNotNull(mock1.mock2); Assert.IsNotNull(mock1.mock3); Assert.IsNotNull(mock2.mock3); Assert.AreSame(mock1.mock2, mock2); Assert.AreSame(mock1.mock3, mock3); Assert.AreSame(mock1.mock3, mock2.mock3); }
public void IfFalse_WithTrue_CallFunctT_ReturnDefault() { MockClass1 result = true.IfFalse(x => new MockClass1()); Assert.IsTrue(result == default(MockClass1)); }
public void IfFalse_WithFalse_CallFunctT() { MockClass1 result = false.IfFalse(x => new MockClass1()); Assert.IsNotNull(result); }
public void IfFalse_WithTrue_DoNotCallFuncT() { MockClass1 result = true.IfFalse(x => { Assert.Fail(); return(new MockClass1()); }); }
public void IfTrue_WithFalse_DoNotCallFunctT_ReturnDefaultT() { MockClass1 result = false.IfTrue(x => new MockClass1()); Assert.IsTrue(result == default(MockClass1)); }
public void IfTrue_WithTrue_CallFunctT() { MockClass1 result = true.IfTrue(x => new MockClass1()); Assert.IsNotNull(result); }