public void TestSingleDelegate() { Transform transformer = DoubleNumber; Assert.AreEqual(10, transformer(5)); transformer = SquareNumber; Assert.AreEqual(36, transformer(6)); Multipler m1 = new Multipler(100); transformer = m1.Function; Assert.AreEqual(700, transformer(7)); }
public void TestMulticastDelegate() { int[] realOutput = new int[3]; Transform transformer = null; transformer += new Multipler(realOutput, 0, -1).SaveInArray; transformer += new Multipler(realOutput, 1, 2).SaveInArray; transformer += new Multipler(realOutput, 2, 6).SaveInArray; // the result value is the result of the last method to be invoked Assert.AreEqual(36, transformer(6)); int[] expectedOutput = { -6, 12, 36 }; CollectionAssert.AreEqual(expectedOutput, realOutput); }
public void TestDelegateArray() { Transform[] arrayTransformer = new Transform[4]; arrayTransformer[0] = DoubleNumber; arrayTransformer[1] = SquareNumber; Multipler m1 = new Multipler(8); Multipler m2 = new Multipler(100); arrayTransformer[2] = m1.Function; arrayTransformer[3] = m2.Function; int input = 9; int[] expectedOutput = { 18, 81, 72, 900 }; int[] realOutput = new int[4]; for (int index = 0; index < 4; ++index) realOutput[index] = arrayTransformer[index](input); CollectionAssert.AreEqual(expectedOutput,realOutput); }
public void TestDelegateArray() { Transform[] arrayTransformer = new Transform[4]; arrayTransformer[0] = DoubleNumber; arrayTransformer[1] = SquareNumber; Multipler m1 = new Multipler(8); Multipler m2 = new Multipler(100); arrayTransformer[2] = m1.Function; arrayTransformer[3] = m2.Function; int input = 9; int[] expectedOutput = { 18, 81, 72, 900 }; int[] realOutput = new int[4]; for (int index = 0; index < 4; ++index) { realOutput[index] = arrayTransformer[index](input); } CollectionAssert.AreEqual(expectedOutput, realOutput); }
public void TestMulticastDelegate() { int[] realOutput = new int[3]; Transform transformer = null; transformer += new Multipler(realOutput,0,-1).SaveInArray; transformer += new Multipler(realOutput,1, 2).SaveInArray; transformer += new Multipler(realOutput,2, 6).SaveInArray; // the result value is the result of the last method to be invoked Assert.AreEqual(36,transformer(6)); int[] expectedOutput = {-6,12,36}; CollectionAssert.AreEqual(expectedOutput,realOutput); }
public void TestSingleDelegate() { Transform transformer = DoubleNumber; Assert.AreEqual(10,transformer(5)); transformer = SquareNumber; Assert.AreEqual(36,transformer(6)); Multipler m1 = new Multipler(100); transformer = m1.Function; Assert.AreEqual(700,transformer(7)); }