//Purpose: Method to Select Product For License Creation public void SelectProduct(Enumerations.ProductInstance productInstance) { try { bool isProductSelectionWindowAppeared = GenericHelper.WaitUtilWindow("Product Selection"); if (isProductSelectionWindowAppeared) { GenericHelper.SelectWindow("Product Selection"); GenericHelper.WaitUntilElement(By.Id("ifrmAvailableProd")); WebDriver.SwitchTo().Frame("ifrmAvailableProd"); GenericHelper.WaitUntilElement(By.XPath("//label[@class='cssLicenseSearchLbl']")); WebDriver.FindElement(By.XPath("//label[@class='cssLicenseSearchLbl']")).Click(); bool isProductTextBoxDisplayed = WebDriver.FindElement(By.Id("txtProduct")).Displayed; if (!isProductTextBoxDisplayed) { GenericHelper.WaitUntilElement(By.XPath("//label[@class='cssLicenseSearchLbl']")); WebDriver.FindElement(By.XPath("//label[@class='cssLicenseSearchLbl']")).Click(); } string productName = DatabaseTools.GetProduct(productInstance); if (productName == null) { throw new ArgumentNullException(string.Format("Product Name is {0}, dataconfiguration issue.", "productName")); } GenericHelper.WaitUntilElement(By.Id("txtProduct")); WebDriver.FindElement(By.Id("txtProduct")).SendKeys(productName); GenericHelper.WaitUntilElement(By.Id("Search1")); WebDriver.FindElement(By.Id("Search1")).Click(); bool isProductDisplayed = GenericHelper.IsElementPresent(By.PartialLinkText("Select")); if (isProductDisplayed) { GenericHelper.WaitUntilElement(By.PartialLinkText("Select")); GenericHelper.Logs("Product has been found successfully while creating the license.", "PASSED"); } else { GenericHelper.Logs("Product has been not found while creating the license.", "FAILED"); throw new NoSuchElementException("Product has been not found while creating the license."); } WebDriver.FindElement(By.PartialLinkText("Select")).Click(); WebDriver.SwitchTo().DefaultContent(); WebDriver.WindowHandles.Any(item => WebDriver.SwitchTo().Window(item).Title == "Product Selection"); GenericHelper.WaitUntilElement(By.Id("ImgContinue")); WebDriver.FindElement(By.Id("ImgContinue")).Click(); Thread.Sleep(15000); WebDriver.WindowHandles.Any(item => WebDriver.SwitchTo().Window(item).Title == "Create License"); new CreateLicensePage().EnterLicenseDetail(); WebDriver.Close(); GenericHelper.SelectWindow("Organization Management"); } else { GenericHelper.Logs("Product selection pop-up not opened for selecting product for licensing.", "FAILED"); throw new NoSuchWindowException("Product Selection pop-up not opened for selecting product for licensing."); } } catch (Exception e) { GenericHelper.Logs(e.ToString(), "FAILED"); bool isWindowPresentProductSelection = GenericHelper.IsPopUpWindowPresent("Product Selection"); if (isWindowPresentProductSelection) { GenericHelper.SelectWindow("Product Selection"); WebDriver.Close(); } throw new Exception(e.ToString()); } }
public void CreateHedProduct(Enumerations.ProductInstance productType) { try { string productName = GenericHelper.GenerateUniqueVariable("BDD_Prod"); string programName = DatabaseTools.GetProgram(Enumerations.ProgramInstance.HedCore); GenericHelper.SelectWindow("Create New Product"); GenericHelper.WaitUntilElement(By.Id("txtProgramName")); WebDriver.FindElement(By.Id("txtProgramName")).SendKeys(productName); WebDriver.FindElement(By.Id("ancRightSearch")).Click(); GenericHelper.WaitUntilElement(By.Id("ifrmSearchProgram")); WebDriver.SwitchTo().Frame("ifrmSearchProgram"); GenericHelper.WaitUntilElement(By.Id("txtProgramName")); WebDriver.FindElement(By.Id("txtProgramName")).SendKeys(programName); WebDriver.FindElement(By.Id("btnSearch")).Click(); GenericHelper.WaitUntilElement(By.Id("grdPegasusDataGrid")); #region Browser Selection if (Browser.Equals("FF")) { if (WebDriver.FindElement(By.Id("grdPegasusDataGrid")).Text.Contains(programName)) { GenericHelper.Logs("Searched Program Found in 'Create New Product' page.", "PASSED"); } else { GenericHelper.Logs("Searched Program not Found in 'Create New Product' page.", "FAILED"); Assert.Fail("Searched Program not Found in 'Create New Product' page."); } } if (Browser.Equals("IE")) { if ( (WebDriver.FindElement(By.Id("grdPegasusDataGrid")).GetAttribute("innerText")).Contains( programName)) { GenericHelper.Logs("Searched Program Found in 'Create New Product' page.", "PASSED"); } else { GenericHelper.Logs("Searched Program not Found in 'Create New Product' page.", "FAILED"); Assert.Fail("Searched Program not Found in 'Create New Product' page."); } } #endregion Browser Selection GenericHelper.WaitUntilElement(By.Id("grdPegasusDataGrid$_ctrl1")); if (!WebDriver.FindElement(By.Id("grdPegasusDataGrid$_ctrl1")).Selected) { WebDriver.FindElement(By.Id("grdPegasusDataGrid$_ctrl1")).Click(); } WebDriver.SwitchTo().DefaultContent(); GenericHelper.WaitUntilElement(By.Id("txtSMSID")); WebDriver.FindElement(By.Id("txtSMSID")).SendKeys("2731"); if (productType.Equals(Enumerations.ProductInstance.HedCoreProgram)) { GenericHelper.WaitUntilElement(By.Id("chkIsProgram")); WebDriver.FindElement(By.Id("chkIsProgram")).Click(); GenericHelper.WaitUntilElement(By.Id("drpDiscipline")); WebDriver.FindElement(By.Id("drpDiscipline")).SendKeys(""); new SelectElement(WebDriver.FindElement(By.Id("drpDiscipline"))).SelectByText("Art"); GenericHelper.WaitUntilElement(By.Id("imgbtnSave")); WebDriver.FindElement(By.Id("imgbtnSave")).Click(); bool isCreateNewProductPopUpClosed = GenericHelper.IsPopUpClosed(2); if (isCreateNewProductPopUpClosed) { GenericHelper.Logs("'Create New Product' pop up window closed successfully after creation of product.", "PASSED"); DatabaseTools.UpdateProduct(productName, programName, Enumerations.ProductInstance.HedCoreProgram); } else { GenericHelper.Logs("'Create New Product' pop up window not closed successfully after creation of product.", "FAILED"); Assert.Fail("'Create New Product' pop up window not closed successfully after creation of product."); } } else { GenericHelper.WaitUntilElement(By.Id("imgbtnSave")); WebDriver.FindElement(By.Id("imgbtnSave")).Click(); bool isCreateNewProductPopUpClosed = GenericHelper.IsPopUpClosed(2); if (isCreateNewProductPopUpClosed) { GenericHelper.Logs("'Create New Product' pop up window closed successfully after creation of product.", "PASSED"); DatabaseTools.UpdateProduct(productName, programName, Enumerations.ProductInstance.HedCoreGeneral); } else { GenericHelper.Logs("'Create New Product' pop up window not closed successfully after creation of product.", "FAILED"); Assert.Fail("'Create New Product' pop up window not closed successfully after creation of product."); } } } catch (Exception e) { GenericHelper.Logs(e.ToString(), "FAILED"); if (GenericHelper.IsPopUpWindowPresent("Create New Product")) { GenericHelper.SelectWindow("Create New Product"); WebDriver.Close(); } Assert.Fail(string.Format("Exception of type {0} caught: {1}", e.GetType(), e.Message)); } }