//public static List<Stream> GetTestSuitesFromAssembly(string assemblyPath) //{ // var tempFileName = CreateAssemblyTempFile(assemblyPath); // File.Copy(assemblyPath, tempFileName); // var seperateAppDomainAssemblyLoader = new SeperateAppDomainAssemblyLoader(); // return seperateAppDomainAssemblyLoader.LoadAssemblyXmlResources(new FileInfo(tempFileName)); //} public static List <string> GetTestSuitesFileFromAssemby(string assemblyPath) { //var tempFileName = CreateAssemblyTempFile(assemblyPath); //File.Copy(assemblyPath, tempFileName); var seperateAppDomainAssemblyLoader = new SeperateAppDomainAssemblyLoader(); var resultList = seperateAppDomainAssemblyLoader.LoadAssemblyXmlResources(new FileInfo(assemblyPath)); //File.Delete(tempFileName); return(resultList); }
public static List <MethodInfo> GetTestScriptMethodsFromAssembly(string assemblyPath) { //var tempFileName = CreateAssemblyTempFile(assemblyPath); //File.Copy(assemblyPath, tempFileName); var seperateAppDomainAssemblyLoader = new SeperateAppDomainAssemblyLoader(); var types = seperateAppDomainAssemblyLoader.LoadAssemblyTypes(new FileInfo(assemblyPath)); var methodInfo = new List <MethodInfo>(); foreach (var type in types) { try { ObjectHandle oh = Activator.CreateInstanceFrom(assemblyPath, type); object o = oh.Unwrap(); Type to = o.GetType(); foreach (var method in to.GetMethods()) { var customAttributes = method.GetCustomAttributes(false); if (customAttributes.Length > 0) { foreach (var customAttribut in customAttributes) { if (customAttribut is TestScriptInformation) { methodInfo.Add(method); } } } } } catch (Exception) { } } try { //File.Delete(tempFileName); } catch { } return(methodInfo); }
private IList <PluginTypeInfo> GetPluginTypeInfo(string dllPath) { if (File.Exists(dllPath)) { var typeLoader = new SeperateAppDomainAssemblyLoader() { CCNETServiceDirectory = CcnetServiceDirecotry }; return(typeLoader.GetAssemblyTypes(new FileInfo(dllPath)).ToList()); } else { return(new List <PluginTypeInfo>()); } }