public static int TestSharedGenerics() { Console.WriteLine("Testing generic dictionaries can be folded properly.."); // Use a generic dictionary that also exists in the library if (!MultiModuleLibrary.GenericClass <string> .IsT("Hello")) { return(Fail); } if (!MultiModuleLibrary.GenericClass <string> .IsMdArrayOfT(new string[0, 0])) { return(Fail); } if (!MultiModuleLibrary.GenericClass <MultiModuleLibrary.GenericStruct <string> > .IsArrayOfT(new MultiModuleLibrary.GenericStruct <string> [0])) { return(Fail); } if (!MultiModuleLibrary.GenericClass <MultiModuleLibrary.GenericStruct <string> > .IsT(new MultiModuleLibrary.GenericStruct <string>())) { return(Fail); } if (!MultiModuleLibrary.MethodThatUsesGenerics()) { return(Fail); } return(Pass); }
public static int TestGenericTLS() { Console.WriteLine("Testing thread statics on generic types shared between modules are shared properly.."); if (!MultiModuleLibrary.MethodThatUsesGenericWithTLS()) { return(Fail); } MultiModuleLibrary.GenericClassWithTLS <int> .ThreadStaticInt += 1; if (MultiModuleLibrary.GenericClassWithTLS <int> .ThreadStaticInt != 2) { return(Fail); } return(Pass); }