public void TestOutTypeInterfacePassTry() { var interfaceClassObj = new TestParamToInterfacePassBaseTwo(); ITestParamToInterfacePassBaseTwo interfaceType = interfaceClassObj; var obj = new TestOutTypeInterfaces(); obj.FuncTryInterfaceTypeOut(out interfaceType); ITestParamToInterfacePassBaseTwo interfaceTypePtr; obj.FuncTryInterfaceTypePtrOut(out interfaceTypePtr); }
public void TestParamTypeToInterfacePass() { var baseClass = new TestParamToInterfacePassBaseTwo(); baseClass++; Assert.AreEqual(baseClass.M, 1); ITestParamToInterfacePassBaseTwo baseInterface = new TestParamToInterfacePassBaseTwo(); var dervClass = new TestParamToInterfacePass(); dervClass.AddM(baseClass); Assert.AreEqual(dervClass.M, 1); dervClass = new TestParamToInterfacePass(dervClass + baseClass); Assert.AreEqual(dervClass.M, 2); dervClass = new TestParamToInterfacePass(dervClass + baseInterface); Assert.AreEqual(dervClass.M, 2); }
public void TestOutTypeInterfacePassTry() { var interfaceClassObj = new TestParamToInterfacePassBaseTwo(); ITestParamToInterfacePassBaseTwo interfaceType = interfaceClassObj; var obj = new TestOutTypeInterfaces(); obj.FuncTryInterfaceTypeOut(out interfaceType); ITestParamToInterfacePassBaseTwo interfaceTypePtr; obj.FuncTryInterfaceTypePtrOut(out interfaceTypePtr); }
public void TestParamTypeToInterfacePass() { var baseClass = new TestParamToInterfacePassBaseTwo(); baseClass++; Assert.AreEqual(baseClass.M, 1); ITestParamToInterfacePassBaseTwo baseInterface = new TestParamToInterfacePassBaseTwo(); var dervClass = new TestParamToInterfacePass(); dervClass.AddM(baseClass); Assert.AreEqual(dervClass.M, 1); dervClass = new TestParamToInterfacePass(dervClass + baseClass); Assert.AreEqual(dervClass.M, 2); dervClass = new TestParamToInterfacePass(dervClass + baseInterface); Assert.AreEqual(dervClass.M, 2); }