static void AddUpdatePackage (NuGetPackageOptions packageOptions, Action<string> takeScreenshot, bool isUpdate = false) { packageOptions.PrintData (); takeScreenshot = takeScreenshot ?? delegate {}; var nuget = new NuGetController (takeScreenshot, isUpdate); nuget.Open (); nuget.EnterSearchText (packageOptions.PackageName, packageOptions.Version, packageOptions.IsPreRelease); for (int i = 0; i < packageOptions.RetryCount; i++) { try { nuget.SelectResultByPackageName (packageOptions.PackageName, packageOptions.Version); break; } catch (NuGetException) { if (i == packageOptions.RetryCount - 1) throw; } } nuget.ClickAdd (); Session.WaitForNoElement (nugetWindow); takeScreenshot ("NuGet-Update-Is-"+isUpdate); try { WaitForNuGet.Success (packageOptions.PackageName, isUpdate ? NuGetOperations.Update : NuGetOperations.Add); } catch (TimeoutException e) { takeScreenshot ("Wait-For-NuGet-Operation-Failed"); throw; } takeScreenshot ("NuGet-Operation-Finished"); }
static void AddUpdatePackage(NuGetPackageOptions packageOptions, Action <string> takeScreenshot, bool isUpdate = false) { packageOptions.PrintData(); var nuget = new NuGetController(takeScreenshot, isUpdate); nuget.Open(); nuget.EnterSearchText(packageOptions.PackageName, packageOptions.Version, packageOptions.IsPreRelease); for (int i = 0; i < packageOptions.RetryCount; i++) { try { nuget.SelectResultByPackageName(packageOptions.PackageName, packageOptions.Version); break; } catch (NuGetException) { if (i == packageOptions.RetryCount - 1) { throw; } } } nuget.ClickAdd(); Session.WaitForNoElement(nugetWindow); takeScreenshot("NuGet-Update-Is-" + isUpdate); try { WaitForNuGet.Success(packageOptions.PackageName, isUpdate ? NuGetOperations.Update : NuGetOperations.Add); } catch (TimeoutException e) { takeScreenshot("Wait-For-NuGet-Operation-Failed"); throw; } takeScreenshot("NuGet-Operation-Finished"); }
public void AddPackagesTest() { CreateProject(); NuGetController.AddPackage(new NuGetPackageOptions { PackageName = "CommandLineParser", Version = "2.0.257-beta", IsPreRelease = true }, this); }
public void TestDontShowWarningWithPowerShellScripts() { CreateProject(); NuGetController.AddPackage(new NuGetPackageOptions { PackageName = "Newtonsoft.Json", }, this); WaitForNuGet.Success("Newtonsoft.Json", NuGetOperations.Add, false, this); TakeScreenShot("NewtonSoftJson-Package-Added-Without-Warning"); }
public void TestReadmeTxtOpens() { CreateProject(); NuGetController.AddPackage(new NuGetPackageOptions { PackageName = "RestSharp", Version = "105.2.3", IsPreRelease = true }, this); WaitForNuGetReadmeOpened(); }
public void TestReadmeTxtOpens() { CreateProject(); NuGetController.AddPackage(new NuGetPackageOptions { PackageName = "RestSharp", Version = "105.0.1", IsPreRelease = true }); Session.WaitForElement(c => c.Window().Marked("MonoDevelop.Ide.Gui.DefaultWorkbench").Property("TabControl.CurrentTab.Text", "readme.txt")); }
public static void AddPackage (NuGetPackageOptions packageOptions, Action<string> takeScreenshot = null) { var nuget = new NuGetController (takeScreenshot); nuget.Open (); nuget.EnterSearchText (packageOptions.PackageName, packageOptions.Version, packageOptions.IsPreRelease); nuget.SelectResultByPackageName (packageOptions.PackageName, packageOptions.Version); nuget.ClickAdd (); Ide.WaitForStatusMessage (new [] { string.Format ("{0} successfully added.", packageOptions.PackageName) }); if (takeScreenshot != null) takeScreenshot ("Package-Added"); }
static void AddUpdatePackage (NuGetPackageOptions packageOptions, Action<string> takeScreenshot, bool isUpdate) { var nuget = new NuGetController (takeScreenshot, isUpdate); nuget.Open (); nuget.EnterSearchText (packageOptions.PackageName, packageOptions.Version, packageOptions.IsPreRelease); nuget.SelectResultByPackageName (packageOptions.PackageName, packageOptions.Version); nuget.ClickAdd (); Ide.WaitForStatusMessage (new[] { string.Format ("{0} successfully {1}.", packageOptions.PackageName, isUpdate ? "updated": "added") }); if (takeScreenshot != null) takeScreenshot ("NuGet-Operation-Finished"); }
static void AddUpdatePackage(NuGetPackageOptions packageOptions, Action <string> takeScreenshot, bool isUpdate) { var nuget = new NuGetController(takeScreenshot, isUpdate); nuget.Open(); nuget.EnterSearchText(packageOptions.PackageName, packageOptions.Version, packageOptions.IsPreRelease); nuget.SelectResultByPackageName(packageOptions.PackageName, packageOptions.Version); nuget.ClickAdd(); Ide.WaitForStatusMessage(new[] { string.Format("{0} successfully {1}.", packageOptions.PackageName, isUpdate ? "updated": "added") }); if (takeScreenshot != null) { takeScreenshot("NuGet-Operation-Finished"); } }
public static void AddPackage(NuGetPackageOptions packageOptions, Action <string> takeScreenshot = null) { var nuget = new NuGetController(takeScreenshot); nuget.Open(); nuget.EnterSearchText(packageOptions.PackageName, packageOptions.Version, packageOptions.IsPreRelease); nuget.SelectResultByPackageName(packageOptions.PackageName, packageOptions.Version); nuget.ClickAdd(); Ide.WaitForStatusMessage(new [] { string.Format("{0} successfully added.", packageOptions.PackageName) }); if (takeScreenshot != null) { takeScreenshot("Package-Added"); } }
public void TestReadmeTxtUpgradeOpens() { CreateProject(); NuGetController.AddPackage(new NuGetPackageOptions { PackageName = "RestSharp", Version = "105.0.1", IsPreRelease = true }, TakeScreenShot); Session.WaitForElement(c => c.Window().Marked("MonoDevelop.Ide.Gui.DefaultWorkbench").Property("TabControl.CurrentTab.Text", "readme.txt")); Session.ExecuteCommand(FileCommands.CloseFile); Session.WaitForElement(IdeQuery.TextArea); NuGetController.UpdatePackage(new NuGetPackageOptions { PackageName = "RestSharp", Version = "105.1.0", IsPreRelease = true }, TakeScreenShot); Session.WaitForElement(c => c.Window().Marked("MonoDevelop.Ide.Gui.DefaultWorkbench").Property("TabControl.CurrentTab.Text", "readme.txt")); }
public void TestReadmeTxtUpgradeOpens() { CreateProject(); NuGetController.AddPackage(new NuGetPackageOptions { PackageName = "RestSharp", Version = "105.2.2", IsPreRelease = true }, this); WaitForNuGetReadmeOpened(); Session.ExecuteCommand(FileCommands.CloseFile); Session.WaitForElement(IdeQuery.TextArea); TakeScreenShot("About-To-Update-Package"); NuGetController.UpdatePackage(new NuGetPackageOptions { PackageName = "RestSharp", Version = "105.2.3", IsPreRelease = true }, this); WaitForNuGetReadmeOpened(); }
public void DontShowPackageUpdatesAvailable() { var templateOptions = new TemplateSelectionOptions { CategoryRoot = OtherCategoryRoot, Category = ".NET", TemplateKindRoot = GeneralKindRoot, TemplateKind = "Console Project" }; var projectDetails = new ProjectDetails(templateOptions); CreateProject(templateOptions, projectDetails); NuGetController.AddPackage(new NuGetPackageOptions { PackageName = "CommandLineParser", Version = "1.9.3.34", IsPreRelease = false }, this); string solutionFolder = GetSolutionDirectory(); string solutionPath = Path.Combine(solutionFolder, projectDetails.SolutionName + ".sln"); var projectPath = Path.Combine(solutionFolder, projectDetails.ProjectName, projectDetails.ProjectName + ".csproj"); Assert.IsTrue(File.Exists(projectPath)); Workbench.CloseWorkspace(this); Workbench.OpenWorkspace(solutionPath, this); try { const string expected = "When a solution is opened and package updates are available, it don't show in status bar"; ReproStep(expected); Ide.WaitForPackageUpdate(); var failureMessage = string.Format("Expected: {0}\nActual: {1}", expected, "When a solution is opened and package updates are available, it shows in status bar"); ReproStep(failureMessage); Assert.Fail(failureMessage); } catch (TimeoutException) { Session.DebugObject.Debug("WaitForPackageUpdate throws TimeoutException as expected"); } Ide.WaitForSolutionLoaded(); TakeScreenShot("Solution-Ready"); }
public void TestDontOpenReadmeOpenedInOther() { var packageInfo = new NuGetPackageOptions { PackageName = "RestSharp", Version = "105.2.3", IsPreRelease = true }; var projectDetails = CreateProject(); NuGetController.AddPackage(packageInfo, this); WaitForNuGetReadmeOpened(); Session.ExecuteCommand(FileCommands.CloseFile); var pclTemplateOptions = new TemplateSelectionOptions { CategoryRoot = "Other", Category = ".NET", TemplateKindRoot = "General", TemplateKind = "Library" }; var pclProjectDetails = ProjectDetails.ToExistingSolution(projectDetails.SolutionName, GenerateProjectName(pclTemplateOptions.TemplateKind)); CreateProject(pclTemplateOptions, pclProjectDetails); Ide.WaitForIdeIdle(30); SolutionExplorerController.SelectProject(projectDetails.SolutionName, pclProjectDetails.ProjectName); NuGetController.AddPackage(packageInfo, this); try { WaitForNuGetReadmeOpened(false); var failureMessage = string.Format("Expected: {0}\nActual:{1}", "readme.txt tab should not open", "readme.txt tab opens"); ReproStep(failureMessage); Assert.Fail(failureMessage); } catch (TimeoutException) { Session.DebugObject.Debug("readme.txt tab failed to open as expected"); } }
public void TestLocalCopyPreservedUpdate() { var templateOptions = new TemplateSelectionOptions { CategoryRoot = OtherCategoryRoot, Category = ".NET", TemplateKindRoot = GeneralKindRoot, TemplateKind = "Console Project" }; var projectDetails = new ProjectDetails(templateOptions); CreateProject(templateOptions, projectDetails); NuGetController.AddPackage(new NuGetPackageOptions { PackageName = "CommandLineParser", Version = "1.9.7", IsPreRelease = false }, TakeScreenShot); string solutionFolder = GetSolutionDirectory(); string solutionPath = Path.Combine(solutionFolder, projectDetails.SolutionName + ".sln"); var projectPath = Path.Combine(solutionFolder, projectDetails.ProjectName, projectDetails.ProjectName + ".csproj"); Assert.IsTrue(File.Exists(projectPath)); TakeScreenShot("About-To-Close-Solution"); Session.ExecuteCommand(FileCommands.CloseWorkspace); TakeScreenShot("Closed-Solution"); AddOrCheckLocalCopy(projectPath, true); Session.GlobalInvoke("MonoDevelop.Ide.IdeApp.Workspace.OpenWorkspaceItem", new FilePath(solutionPath), true); TakeScreenShot("Solution-Opened"); Ide.WaitForPackageUpdate(); TakeScreenShot("Solution-Ready"); NuGetController.UpdateAllNuGetPackages(TakeScreenShot); AddOrCheckLocalCopy(projectPath, false); }
public void TestLocalCopyPreservedUpdate() { var templateOptions = new TemplateSelectionOptions { CategoryRoot = OtherCategoryRoot, Category = ".NET", TemplateKindRoot = GeneralKindRoot, TemplateKind = "Console Project" }; var projectDetails = new ProjectDetails(templateOptions); CreateProject(templateOptions, projectDetails); NuGetController.AddPackage(new NuGetPackageOptions { PackageName = "CommandLineParser", Version = "1.9.71", IsPreRelease = false }, this); string solutionFolder = GetSolutionDirectory(); string solutionPath = Path.Combine(solutionFolder, projectDetails.SolutionName + ".sln"); var projectPath = Path.Combine(solutionFolder, projectDetails.ProjectName, projectDetails.ProjectName + ".csproj"); Assert.IsTrue(File.Exists(projectPath)); ReproStep("Check 'Local Copy' on CommandLine package under References"); Workbench.CloseWorkspace(this); AddOrCheckLocalCopy(projectPath, true); Workbench.OpenWorkspace(solutionPath, this); NuGetController.UpdateAllNuGetPackages(this); ReproStep("Check if CommandLine package under References has 'Local Copy' checked"); AddOrCheckLocalCopy(projectPath, false); }