/// <summary> /// This method creates quote and returns quote id /// </summary> /// <param name="driver">Webdriver Object to drive the execution</param> /// <param name="quoteType">This is the type of quote to be configured /// (Open/Sealed/Negotiated)</param> /// <param name="quoteDescription">The text to enter in your reference textbox which appears /// in quote description</param> /// <returns></returns> public String createQuote(IWebDriver driver, String quoteType, String quoteDescription) { ConfigureQuotePage configQuotePageElements = new ConfigureQuotePage(driver); CommonPageWebElements commonPgElements = new CommonPageWebElements(driver); String quoteId = ""; // String quoteText = "Automation script "+quoteType+" quote test " String quoteText = quoteDescription + "-" + generalLib.getRandomNo(1, 1000); generalLib.waitForPageLoad(driver); configureQuote(driver, quoteType); generalLib.waitForPageLoad(driver); generalLib.normalWait(2000); searchAndAddSupplierToQuote(driver, "demo"); generalLib.waitForPageLoad(driver); if (applicationLib.verifySuccessMessage(driver, "Suppliers added to quote.")) { generalLib.moveToElementAndClick(driver, configQuotePageElements .getQtAddSupplierSaveAndContinueBtn()); selectQuoteTemplateAndEnterQuoteText(driver, "quote", quoteText); generalLib.waitForPageLoad(driver); generalLib.clickOnWebElement(driver, configQuotePageElements .getSaveAndContinueToQuoteSummaryBtn()); generalLib.waitForPageLoad(driver); quoteId = generalLib.getTextFromElement(driver, configQuotePageElements .getConfirmAndSendPgQuoteId()); generalLib.clickOnWebElement(driver, configQuotePageElements.getSendQuoteBtn()); generalLib.waitForPageLoad(driver); } return(quoteId); }
/// <summary> /// This method configures quote by selecting type of quote, entering close by date and click on /// Save and continue button /// </summary> /// <param name="driver">IWebdriver Object to drive the execution</param> /// <param name="quoteType">Type of quote</param> public void configureQuote(IWebDriver driver, String quoteType) { ConfigureQuotePage configQuotePageElements = new ConfigureQuotePage(driver); String currentDateTime = DateTime.Now.AddDays(2).ToString("MM/dd/yyyy") + " 08:00"; generalLib.waitForPageLoad(driver); switch (quoteType.ToLower()) { case "open": generalLib.clickOnWebElement(driver, configQuotePageElements.getOpenQuoteRadioBtn()); break; case "sealed": generalLib.clickOnWebElement(driver, configQuotePageElements.getSealedQuoteRadioBtn()); break; case "negotiated": generalLib.clickOnWebElement(driver, configQuotePageElements.getNegotiatedQuoteRadioBtn()); break; default: Console.WriteLine("'" + quoteType + "' is not a valid type"); break; } generalLib.enterDataInTextBox(driver, configQuotePageElements.getcloseByDtDatePicker(), currentDateTime); generalLib.normalWait(2000); generalLib.clickOnWebElement(driver, new CommonPageWebElements(driver).getSubmitBtn()); }
/// <summary> /// This method selects the required type of template and clicks on submit button /// </summary> /// <param name="driver">IWebdriver Object to drive the execution</param> /// <param name="templateType">This is the template type (Quote/List)</param> public void chooseTemplate(IWebDriver driver, String templateType) { generalLib.waitForPageLoad(driver); if (generalLib.getStatusCode(driver.Url).Equals("OK") || generalLib.getStatusCode(driver.Url).Equals("Redirect")) { ConfigureQuotePage configQuotePageElements = new ConfigureQuotePage(driver); switch (templateType.ToLower()) { case "quote": generalLib.clickOnWebElement(driver, configQuotePageElements .getChooseTemplateQuoteTempRadioBtn()); generalLib.clickOnWebElement(driver, new CommonPageWebElements(driver).getSubmitBtn()); break; case "list": generalLib.clickOnWebElement(driver, configQuotePageElements .getChooseTemplateListTempRadioBtn()); generalLib.clickOnWebElement(driver, new CommonPageWebElements(driver).getSubmitBtn()); break; } } }