/// <summary> /// Expands a TestPackage based on a known project format, populating it /// with the project contents and any settings the project provides. /// Note that the package file path must be checked to ensure that it is /// a known project format before calling this method. /// </summary> /// <param name="package">The TestPackage to be expanded</param> public void ExpandProjectPackage(TestPackage package) { Guard.ArgumentNotNull(package, "package"); Guard.ArgumentValid(package.TestFiles.Count == 0, "Package is already expanded", "package"); string path = package.FullName; IProject project = LoadFrom(path); Guard.ArgumentValid(project != null, "Unable to load project " + path, "package"); string configName = package.GetSetting(PackageSettings.ActiveConfig, (string)null); // Need RunnerSetting TestPackage tempPackage = project.GetTestPackage(configName); // The original package held overrides, so don't change them, but // do apply any settings specified within the project itself. foreach (string key in tempPackage.Settings.Keys) { if (!package.Settings.ContainsKey(key)) // Don't override settings from command line { package.Settings[key] = tempPackage.Settings[key]; } } foreach (string assembly in tempPackage.TestFiles) { package.Add(assembly); } }
public TestPackage MakeTestPackage(IProject project, string configName) { TestPackage package = new TestPackage(project.ProjectPath); if (project.Configs.Count == 0) return package; foreach (string assembly in project.ActiveConfig.Assemblies) package.Add(assembly); return package; }
public TestPackage MakeTestPackage(IProject project, string configName) { TestPackage package = new TestPackage(project.ProjectPath); if (project.Configs.Count == 0) { return(package); } foreach (string assembly in project.ActiveConfig.Assemblies) { package.Add(assembly); } return(package); }
public TestPackage GetTestPackage(string configName) { var package = new TestPackage(ProjectPath); foreach (var name in _configs.Keys) { if (configName == null || configName == name) { var config = _configs[name]; foreach (string assembly in config.Assemblies) { package.Add(assembly); } break; } } return(package); }
/// <summary> /// Expands a TestPackages based on a known project format, /// creating a subpackage for each assembly. The FilePath /// of hte package must be checked to ensure that it is /// a known project format before calling this method. /// </summary> /// <param name="package">The TestPackage to be expanded</param> public void ExpandProjectPackage(TestPackage package) { IProject project = LoadProject(package.FullName); string configName = package.GetSetting(RunnerSettings.ActiveConfig, string.Empty); // Need RunnerSetting IProjectConfig config = configName != string.Empty ? project.Configs[configName] : project.ActiveConfig; foreach (string key in config.Settings.Keys) { package.Settings[key] = config.Settings[key]; } foreach (string assembly in config.Assemblies) { package.Add(assembly); } }
public TestPackage GetTestPackage(string configName) { var package = new TestPackage(ProjectPath); if (configName == null) { configName = ActiveConfigName; } if (configName != null) { XmlNode configNode = GetConfigNode(configName); if (configNode != null) { string basePath = GetBasePathForConfig(configNode); foreach (XmlNode node in configNode.SelectNodes("assembly")) { string assembly = node.GetAttribute("path"); if (basePath != null) { assembly = Path.Combine(basePath, assembly); } package.Add(assembly); } var settings = GetSettingsForConfig(configNode); foreach (var key in settings.Keys) { package.Settings.Add(key, settings[key]); } } } return(package); }
public TestPackage GetTestPackage(string configName) { TestPackage package = new TestPackage(ProjectPath); string appbase = null; foreach (var name in _configs.Keys) { if (configName == null || configName == name) { var config = _configs[name]; package.Add(config.AssemblyPath); appbase = config.OutputDirectory; break; } } if (appbase != null) { package.Settings["BasePath"] = appbase; } return(package); }
/// <summary> /// Expands a TestPackages based on a known project format, /// creating a subpackage for each assembly. The FilePath /// of hte package must be checked to ensure that it is /// a known project format before calling this method. /// </summary> /// <param name="package">The TestPackage to be expanded</param> public void ExpandProjectPackage(TestPackage package) { IProject project = LoadProject(package.FullName); string configName = package.GetSetting(RunnerSettings.ActiveConfig, string.Empty); // Need RunnerSetting IProjectConfig config = configName != string.Empty ? project.Configs[configName] : project.ActiveConfig; foreach (string key in config.Settings.Keys) package.Settings[key] = config.Settings[key]; foreach (string assembly in config.Assemblies) package.Add(assembly); }