public void CreateProject(TemplateSelectionOptions templateOptions, ProjectDetails projectDetails, GitOptions gitOptions = null, object miscOptions = null) { PrintToTestRunner(templateOptions, projectDetails, gitOptions, miscOptions); ReproStep("Create a new project", templateOptions, projectDetails, gitOptions, miscOptions); var newProject = new NewProjectController(); if (projectDetails.AddProjectToExistingSolution) { newProject.Open(projectDetails.SolutionName); } else { newProject.Open(); } TakeScreenShot("Open"); OnSelectTemplate(newProject, templateOptions); OnEnterTemplateSpecificOptions(newProject, projectDetails.ProjectName, miscOptions); OnEnterProjectDetails(newProject, projectDetails, gitOptions, miscOptions); OnClickCreate(newProject, projectDetails); FoldersToClean.Add(projectDetails.SolutionLocation); }
void PrintToTestRunner(TemplateSelectionOptions templateOptions, ProjectDetails projectDetails, GitOptions gitOptions, object miscOptions) { templateOptions.PrintData(); projectDetails.PrintData(); gitOptions.PrintData(); miscOptions.PrintData(); }
public void CreateBuildProject(TemplateSelectionOptions templateOptions, Action beforeBuild, GitOptions gitOptions = null, object miscOptions = null) { var projectName = GenerateProjectName(templateOptions.TemplateKind); var projectDetails = new ProjectDetails { ProjectName = projectName, SolutionName = projectName, SolutionLocation = Util.CreateTmpDir(), ProjectInSolution = true }; CreateBuildProject(templateOptions, projectDetails, beforeBuild, gitOptions, miscOptions); }
protected void IsTemplateSelected(TemplateSelectionOptions templateOptions, string addToExistingSolution = null) { // var newProject = new NewProjectController (); // try { // newProject.WaitForOpen (); // } catch (TimeoutException) { // if (!string.IsNullOrEmpty (addToExistingSolution)) // newProject.Open (addToExistingSolution); // else // newProject.Open (); // } // newProject.IsSelected (templateOptions); }
public void CreateBuildProject(TemplateSelectionOptions templateOptions, ProjectDetails projectDetails, Action beforeBuild, GitOptions gitOptions = null, object miscOptions = null) { try { CreateProject(templateOptions, projectDetails, gitOptions, miscOptions); try { beforeBuild(); TakeScreenShot("BeforeBuild"); } catch (TimeoutException e) { TakeScreenShot("BeforeBuildActionFailed"); Assert.Fail(e.ToString()); } OnBuildTemplate((int)projectDetails.BuildTimeout.TotalSeconds); } catch (Exception e) { TakeScreenShot("TestFailedWithGenericException"); Assert.Fail(e.ToString()); } finally { FoldersToClean.Add(projectDetails.SolutionLocation); } }
protected virtual void OnSelectTemplate(NewProjectController newProject, TemplateSelectionOptions templateOptions) { if (!newProject.SelectTemplateType(templateOptions.CategoryRoot, templateOptions.Category)) { throw new TemplateSelectionException(string.Format("Failed to select Category '{0}' under '{1}'", templateOptions.Category, templateOptions.CategoryRoot)); } TakeScreenShot("TemplateCategorySelected"); if (!newProject.SelectTemplate(templateOptions.TemplateKindRoot, templateOptions.TemplateKind)) { throw new TemplateSelectionException(string.Format("Failed to select Template '{0}' under '{1}'", templateOptions.TemplateKind, templateOptions.TemplateKindRoot)); } TakeScreenShot("TemplateSelected"); if (!newProject.Next()) { throw new TemplateSelectionException("Clicking Next failed after selecting template"); } TakeScreenShot("NextAfterTemplateSelected"); }
public ProjectDetails(TemplateSelectionOptions templateData) : this() { ProjectName = CreateBuildTemplatesTestBase.GenerateProjectName(templateData.TemplateKind); SolutionName = ProjectName; }