public static void TestI3() { I3 i; var a = new C4(); i = a; Assert.AreEqual("C4", a.Foo()); Assert.AreEqual("C4", i.Foo()); var b = new C5(); i = b; Assert.AreEqual("C4", b.Foo()); Assert.AreEqual("C5", i.Foo()); }