private void btnUpgrade_Click(object sender, RoutedEventArgs e) { if (WorkSpace.Instance.Solution != null) { Solution sol = WorkSpace.Instance.Solution; SolutionUpgrade.ClearPreviousScans(); ConcurrentBag <string> lowerVersionFiles = SolutionUpgrade.GetSolutionFilesCreatedWithRequiredGingerVersion(SolutionUpgrade.GetSolutionFilesWithVersion(Solution.SolutionFiles(sol.Folder)), eGingerVersionComparisonResult.LowerVersion); if (lowerVersionFiles != null && lowerVersionFiles.Count > 0) { UpgradePage solutionUpgradePage = new UpgradePage(SolutionUpgradePageViewMode.UpgradeSolution, sol.Folder, sol.Name, lowerVersionFiles.ToList()); solutionUpgradePage.ShowAsWindow(); } else { Reporter.ToUser(eUserMsgKey.StaticInfoMessage, "Upgrade is not needed, all solution items were created with latest version."); } } }
public void ShowUpgradeSolutionItems(SolutionUpgradePageViewMode upgradeSolution, string solutionFolder, string solutionName, List <string> list) { UpgradePage solutionUpgradePage = new UpgradePage(SolutionUpgradePageViewMode.UpgradeSolution, solutionFolder, solutionName, list); solutionUpgradePage.ShowAsWindow(); }
public void ShowUpgradeGinger(string solutionFolder, List <string> higherVersionFiles) { UpgradePage gingerUpgradePage = new UpgradePage(SolutionUpgradePageViewMode.UpgradeGinger, solutionFolder, string.Empty, higherVersionFiles); gingerUpgradePage.ShowAsWindow(); }
private void Awake() { upgradePage = UpgradePage.Instance; }
public void RunUpgradeTest(XElement settings) { string testName = settings.Attribute("name").Value; string baseUrl = settings.Attribute("baseURL").Value; string browser = settings.Attribute("browser").Value; string userName = settings.Attribute("UserName").Value; string password = settings.Attribute("Password").Value; IWebDriver driver = StartBrowser(browser); Trace.WriteLine("Running TEST: '" + testName + "'"); UpgradePage upgradePage = new UpgradePage(driver); upgradePage.OpenUsingUrl(baseUrl); upgradePage.FillAccountInfo(userName, password); upgradePage.ClickOnUpgradeButton(); upgradePage.WaitForUpgradingProcessToFinish(); upgradePage.ClickOnSeeLogsButton(); upgradePage.WaitForLogContainer(); Trace.WriteLine("Assert Log records: "); StringAssert.DoesNotContain("ERROR", upgradePage.FindElement(By.XPath(UpgradePage.UpgraderLogContainer)).Text, "PLZ check log file, it contains error messages"); upgradePage.ClickOnVisitWebsiteButton(); var installerPage = new InstallerPage(driver); installerPage.WelcomeScreen(); LoginPage loginPage = new LoginPage(driver); loginPage.WaitForElement(By.XPath(ControlPanelIDs.LoginLink), 20).WaitTillVisible(20).Click(); loginPage.WaitAndSwitchToFrame(30); loginPage.DoLoginUsingLoginLink(userName, password); loginPage.WaitAndSwitchToWindow(30); HostSettingsPage hostSettingsPage = new HostSettingsPage(driver); hostSettingsPage.OpenUsingButtons(baseUrl); hostSettingsPage.Click(By.XPath(HostSettingsPage.LogsTab)); SlidingSelect.SelectByValue(driver, By.XPath("//a[contains(@id, '" + HostSettingsPage.LogFilesDropDownArrow + "')]"), By.XPath(HostSettingsPage.LogFilesDropDownList), HostSettingsPage.OptionOne, SlidingSelect.SelectByValueType.Contains); hostSettingsPage.WaitForElement(By.XPath(HostSettingsPage.LogContent)); StringAssert.Contains("the script ran successfully", hostSettingsPage.FindElement(By.XPath(HostSettingsPage.LogContent)).Text, "The Log File is not empty"); SlidingSelect.SelectByValue(driver, By.XPath("//a[contains(@id, '" + HostSettingsPage.LogFilesDropDownArrow + "')]"), By.XPath(HostSettingsPage.LogFilesDropDownList), HostSettingsPage.OptionTwo, SlidingSelect.SelectByValueType.Contains); hostSettingsPage.WaitForElement(By.XPath(HostSettingsPage.LogContent)); StringAssert.DoesNotContain("ERROR", hostSettingsPage.FindElement(By.XPath(HostSettingsPage.LogContent)).Text, "The Installer Log File contains ERRORS"); }
public static bool SetSolution(string SolutionFolder) { try { Reporter.ToLog(eLogLevel.INFO, string.Format("Loading the Solution '{0}'", SolutionFolder)); mLoadingSolution = true; OnPropertyChanged(nameof(LoadingSolution)); //Cleanup SolutionCleanup(); //Load new Solution string SolFile = System.IO.Path.Combine(SolutionFolder, @"Ginger.Solution.xml"); if (File.Exists(Amdocs.Ginger.IO.PathHelper.GetLongPath(SolFile))) { //get Solution files IEnumerable <string> solutionFiles = Solution.SolutionFiles(SolutionFolder); ConcurrentBag <Tuple <SolutionUpgrade.eGingerVersionComparisonResult, string> > solutionFilesWithVersion = null; //check if Ginger Upgrade is needed for loading this Solution try { Reporter.ToLog(eLogLevel.DEBUG, "Checking if Ginger upgrade is needed for loading the Solution"); if (solutionFilesWithVersion == null) { solutionFilesWithVersion = SolutionUpgrade.GetSolutionFilesWithVersion(solutionFiles); } ConcurrentBag <string> higherVersionFiles = SolutionUpgrade.GetSolutionFilesCreatedWithRequiredGingerVersion(solutionFilesWithVersion, SolutionUpgrade.eGingerVersionComparisonResult.HigherVersion); if (higherVersionFiles.Count > 0) { if (WorkSpace.Instance.RunningInExecutionMode == false && RunningFromUnitTest == false) { MainWindow.HideSplash(); UpgradePage gingerUpgradePage = new UpgradePage(SolutionUpgradePageViewMode.UpgradeGinger, SolutionFolder, string.Empty, higherVersionFiles.ToList()); gingerUpgradePage.ShowAsWindow(); } Reporter.ToLog(eLogLevel.WARN, "Ginger upgrade is needed for loading the Solution, aborting Solution load."); return(false); } } catch (Exception ex) { Reporter.ToLog(eLogLevel.ERROR, "Error occurred while checking if Solution requires Ginger Upgrade", ex); } Solution sol = Solution.LoadSolution(SolFile); if (sol != null) { WorkSpace.Instance.SolutionRepository = GingerSolutionRepository.CreateGingerSolutionRepository(); WorkSpace.Instance.SolutionRepository.Open(SolutionFolder); WorkSpace.Instance.PlugInsManager.SolutionChanged(WorkSpace.Instance.SolutionRepository); HandleSolutionLoadSourceControl(sol); ValueExpression.SolutionFolder = SolutionFolder; BusinessFlow.SolutionVariables = sol.Variables; sol.SetReportsConfigurations(); WorkSpace.Instance.Solution = sol; WorkSpace.Instance.UserProfile.LoadRecentAppAgentMapping(); AutoLogProxy.SetAccount(sol.Account); //SetDefaultBusinessFlow(); if (!WorkSpace.Instance.RunningInExecutionMode) { DoSolutionAutoSaveAndRecover(); } //Offer to upgrade Solution items to current version try { if (WorkSpace.Instance.UserProfile.DoNotAskToUpgradeSolutions == false && WorkSpace.Instance.RunningInExecutionMode == false && RunningFromUnitTest == false) { if (solutionFilesWithVersion == null) { solutionFilesWithVersion = SolutionUpgrade.GetSolutionFilesWithVersion(solutionFiles); } ConcurrentBag <string> lowerVersionFiles = SolutionUpgrade.GetSolutionFilesCreatedWithRequiredGingerVersion(solutionFilesWithVersion, SolutionUpgrade.eGingerVersionComparisonResult.LowerVersion); if (lowerVersionFiles != null && lowerVersionFiles.Count > 0) { MainWindow.HideSplash(); UpgradePage solutionUpgradePage = new UpgradePage(SolutionUpgradePageViewMode.UpgradeSolution, sol.Folder, sol.Name, lowerVersionFiles.ToList()); solutionUpgradePage.ShowAsWindow(); } } } catch (Exception ex) { Reporter.ToLog(eLogLevel.ERROR, "Error occurred while checking if Solution files should be Upgraded", ex); } // No need to add solution to recent if running from CLI if (!WorkSpace.Instance.RunningInExecutionMode && !RunningFromUnitTest) { WorkSpace.Instance.UserProfile.AddSolutionToRecent(sol); } } else { Reporter.ToUser(eUserMsgKey.SolutionLoadError, "Load solution from file failed."); return(false); } } else { Reporter.ToUser(eUserMsgKey.BeginWithNoSelectSolution); return(false); } return(true); } catch (Exception ex) { Reporter.ToLog(eLogLevel.ERROR, "Error occurred while loading the solution", ex); SolutionCleanup(); throw ex; } finally { mLoadingSolution = false; OnPropertyChanged(nameof(LoadingSolution)); Reporter.ToLog(eLogLevel.INFO, string.Format("Finished Loading the Solution '{0}'", SolutionFolder)); Mouse.OverrideCursor = null; } }