/// <summary> /// The add predefined test suites from assembly. /// </summary> /// <param name="rootObject"> /// The root object. /// </param> /// <param name="loadingAssemblyName"> /// The loading assembly name. /// </param> /// <param name="deviceFunctions"> /// </param> public void AddPredefinedTestSuitesFromAssembly(TestCollection rootObject, string loadingAssemblyName, List <DeviceFunction> deviceFunctions) { if (deviceFunctions != null) { var suitesFiles = AssemblyProxy.GetTestSuitesFileFromAssembly(loadingAssemblyName); foreach (var suitesFile in suitesFiles) { try { var testConfig = new TestConfiguration(); testConfig = testConfig.GetTestConfiguration(suitesFile.ResourceNameFullPath); foreach (var availableTestObject in testConfig.AvailableTestObjects) { if (availableTestObject is TestSuite) { var testSuite = availableTestObject as TestSuite; if (testSuite.TestCategory == TestCategory.DeviceTypeAcceptance) { testConfig.AvailableTestObjects = FilderTestConfig(deviceFunctions, testSuite.TestObjects); // var testObjects = this.AddNamespaceToTestObjectCollection(rootObject, string.Format("{0}.{1}.{2}", testSuite.TestDefinition, testSuite.TestCategory, testSuite.TestFocus), testConfig.AvailableTestObjects); var testObjects = this.AddNamespaceToTestObjectCollection(rootObject, string.Format("{0}", testSuite.TestDefinition), testConfig.AvailableTestObjects); foreach (var testObject in testObjects) { MergeTestObjectCollection(this.TestConfiguration.AvailableTestObjects, testObject as TestCollection); } } } } } catch (Exception ex) { Log.ErrorEx(this, ex, string.Format("AddPredefinedTestSuitesFromAssembly: {0} - {1}", suitesFile.ResourceNameFullPath, ex.Message)); } finally { File.Delete(suitesFile.ResourceNameFullPath); } } } }
/// <summary> /// The get setup delivery device functions from assembly. /// </summary> /// <param name="testFrameworkAssemblyPath"> /// The test framework assembly path. /// </param> /// <returns> /// The <see cref="DeviceFunction"/>. /// </returns> public static List <DeviceFunction> GetSetupDeliveryDeviceFunctionsFromAssembly(string testFrameworkAssemblyPath) { var deviceFunctionList = new List <DeviceFunction>(); var suitesFiles = AssemblyProxy.GetTestSuitesFileFromAssembly(testFrameworkAssemblyPath); foreach (var suitesFile in suitesFiles) { try { var testConfig = new TestConfiguration(); testConfig = testConfig.GetTestConfiguration(suitesFile.ResourceNameFullPath); foreach (var availableTestObject in testConfig.AvailableTestObjects) { if (availableTestObject is TestSuite) { var testSuite = availableTestObject as TestSuite; if (testSuite.TestCategory == TestCategory.SetupDelivery) { var deviceFunction = new DeviceFunction { DisplayName = testSuite.TestFocus.ToString(), Name = testSuite.TestFocus.ToString(), Active = true, Version = new Version() }; deviceFunctionList.Add(deviceFunction); } } } } catch (Exception ex) { Log.ErrorEx(null, ex, string.Format("AddPredefinedTestSuitesFromAssembly: {0} - {1}", suitesFile.ResourceNameFullPath, ex.Message)); } } return(deviceFunctionList); }
/// <summary> /// The add test suites from assembly. /// </summary> /// <param name="loadingAssemblyName"> /// The loading assembly name. /// </param> private void AddTestSuitesFromAssembly(string loadingAssemblyName) { var suitesFiles = AssemblyProxy.GetTestSuitesFileFromAssembly(loadingAssemblyName); foreach (var suitesFile in suitesFiles) { var testConfig = new TestConfiguration(); var allAvailableTestObjects = testConfig.GetTestConfiguration(suitesFile.ResourceNameFullPath).AvailableTestObjects; var testObjectNamespace = Path.GetFileNameWithoutExtension(Path.GetFileNameWithoutExtension(suitesFile.ResourceName)); var testObjects = this.AddNamespaceToTestObjectCollection(testObjectNamespace, allAvailableTestObjects); foreach (var testObject in testObjects) { MergeTestObjectCollection(this.TestConfiguration.AvailableTestObjects, testObject as TestCollection); } File.Delete(suitesFile.ResourceNameFullPath); } }