Exemple #1
0
    public static void TestGenInterface_GenType()
    {
        IGen <int>    iGenC4Int    = new C4 <int>();
        IGen <object> iGenC4Object = new C4 <object>();
        IGen <string> iGenC4String = new C4 <string>();

        // TEST6: test non generic virtual method
        if (iGenC4Int.method1() != 7 || iGenC4Object.method1() != 7 || iGenC4String.method1() != 7)
        {
            Console.WriteLine("Failed at TestGenInterface_GenType: non generic method");
            pass = false;
        }


        // TEST7: test generic virtual method
        if (iGenC4Int.method2 <int>() != 8 || iGenC4Int.method2 <object>() != 8 || iGenC4Int.method2 <string>() != 8 ||
            iGenC4Int.method2 <A <int> >() != 8 || iGenC4Int.method2 <S <string> >() != 8

            || iGenC4Object.method2 <int>() != 8 || iGenC4Object.method2 <object>() != 8 || iGenC4Object.method2 <string>() != 8 ||
            iGenC4Object.method2 <A <int> >() != 8 || iGenC4Object.method2 <S <string> >() != 8

            || iGenC4String.method2 <int>() != 8 || iGenC4String.method2 <object>() != 8 || iGenC4String.method2 <string>() != 8 ||
            iGenC4String.method2 <A <int> >() != 8 || iGenC4String.method2 <S <string> >() != 8
            )
        {
            Console.WriteLine("Failed at TestGenInterface_GenType: generic method");
            pass = false;
        }
    }
    public static void TestGenInterface_GenType()
    {
        IGen <int>    iGenC4Int    = new C4 <int>();
        IGen <object> iGenC4Object = new C4 <object>();
        IGen <string> iGenC4String = new C4 <string>();

        // TEST6: test non generic virtual method

        Eval((iGenC4Int.method1().ToString()).Equals("7"));
        Eval((iGenC4Object.method1().ToString()).Equals("7"));
        Eval((iGenC4String.method1().ToString()).Equals("7"));



        // TEST7: test generic virtual method

        Eval((iGenC4Int.method2 <int>().ToString()).Equals("8"));
        Eval((iGenC4Int.method2 <object>().ToString()).Equals("8"));
        Eval((iGenC4Int.method2 <string>().ToString()).Equals("8"));
        Eval((iGenC4Int.method2 <A <int> >().ToString()).Equals("8"));
        Eval((iGenC4Int.method2 <S <string> >().ToString()).Equals("8"));

        Eval((iGenC4String.method2 <int>().ToString()).Equals("8"));
        Eval((iGenC4String.method2 <object>().ToString()).Equals("8"));
        Eval((iGenC4String.method2 <string>().ToString()).Equals("8"));
        Eval((iGenC4String.method2 <A <int> >().ToString()).Equals("8"));
        Eval((iGenC4String.method2 <S <string> >().ToString()).Equals("8"));

        Eval((iGenC4Object.method2 <int>().ToString()).Equals("8"));
        Eval((iGenC4Object.method2 <object>().ToString()).Equals("8"));
        Eval((iGenC4Object.method2 <string>().ToString()).Equals("8"));
        Eval((iGenC4Object.method2 <A <int> >().ToString()).Equals("8"));
        Eval((iGenC4Object.method2 <S <string> >().ToString()).Equals("8"));
    }