List of usage examples for org.openqa.selenium WebElement findElements
@Override List<WebElement> findElements(By by);
From source file:com.ecofactor.qa.automation.insite.page.DemandSideManagementImpl.java
License:Open Source License
/** * Collect program names./*from www . j a v a 2s . c o m*/ * * @return the list * @see com.ecofactor.qa.automation.insite.page.DemandSideManagement#collectProgramNames() */ @Override public List<String> collectProgramNames() { logger.info("entered collect pgms"); if (formElement == null) loadForm(); List<String> pgmNames = new ArrayList<String>(); WebElement pgmListForm = DriverConfig.getDriver() .findElement(By.id(demandSideManagementConfig.get(PROGRAM_LIST_FORM))); WebElement programsListTable = retrieveElementByAttributeValueContainsForSubElement( DriverConfig.getDriver(), pgmListForm, TAG_TBODY, ATTR_ID, demandSideManagementConfig.get(PROGRAM_LIST_FORM_TABLEID), SHORT_TIMEOUT); List<WebElement> programsList = programsListTable.findElements(By.tagName(TAG_ANCHOR)); for (WebElement programElement : programsList) { pgmNames.add(programElement.getText()); logger.info("Program Name: " + programElement.getText()); logger.info("programElement.getText(): " + programElement.getText()); } logger.info("exit collect pgms"); return pgmNames; }
From source file:com.ecofactor.qa.automation.insite.page.DemandSideManagementImpl.java
License:Open Source License
/** * Gets the program details.Retrieve the program data as displayed in the * screen.//from ww w. jav a 2 s . co m * * @return the program details * @throws ParseException * the parse exception */ public Map<String, Object> getProgramDetails() throws ParseException { formatter = new SimpleDateFormat("MM-dd-yyyy"); DriverConfig.getDriver().switchTo().defaultContent(); smallWait(); DriverConfig.getDriver().switchTo().frame(0); WaitUtil.waitUntil(SHORT_TIMEOUT); logger.info("check if the form is displayed."); WebElement form1 = DriverConfig.getDriver().findElement(By.id(demandSideManagementConfig.get(FORM_ID))); WebElement programId = form1.findElement(By.id(demandSideManagementConfig.get(PROGRAM_ID_FIELDS_ID))); logger.info("programid: " + programId.getAttribute(ATTR_VALUE)); lsProgramId = Integer.parseInt(programId.getAttribute(ATTR_VALUE)); programPropertiesMap.put("ProgramId", programId.getAttribute(ATTR_VALUE)); WebElement propertiesFormElement = DriverConfig.getDriver() .findElement(By.id(demandSideManagementConfig.get(PROGRAM_TITLE_SPAN_ID))); logger.info("program name as displayed in Ui : " + propertiesFormElement.getText()); programPropertiesMap.put("ProgramName", propertiesFormElement.getText()); WebElement programProperties = DriverConfig.getDriver() .findElements(By.className(demandSideManagementConfig.get(PROGRAM_PROPERTIES_DIV_CLASS))).get(1); List<WebElement> propertyList = programProperties.findElements(By.tagName(TAG_TD)); Iterator<WebElement> iterator = propertyList.listIterator(); while (iterator.hasNext()) { programPropertiesMap.put(iterator.next().getText().replaceAll(" ", "_"), iterator.next().getText()); } return programPropertiesMap; }
From source file:com.ecofactor.qa.automation.insite.page.DemandSideManagementImpl.java
License:Open Source License
/** * Click first program.Find the first LS program and click it. * //from ww w.j a va 2 s.c o m * @throws ParseException * the parse exception */ public void clickFirstProgram() throws ParseException { WaitUtil.waitUntil(SHORT_TIMEOUT); DriverConfig.getDriver().switchTo().frame(0); logger.info("check if program list form is displayed."); formElement = DriverConfig.getDriver() .findElement(By.id(demandSideManagementConfig.get(PROGRAM_LIST_FORM))); WebElement tableElement = formElement .findElement(By.id(demandSideManagementConfig.get(PROGRAM_LIST_FORM_TABLEID))); DriverConfig.setLogString("select the first program.", true); List<WebElement> columnElements = tableElement .findElements(By.className(demandSideManagementConfig.get(PROGRAM_DIV_CLASS))); if (columnElements.size() > 0) { DriverConfig.setLogString( "Program Name: " + columnElements.get(0).findElement(By.tagName(TAG_ANCHOR)).getText(), true); columnElements.get(0).findElement(By.tagName(TAG_ANCHOR)).click(); } }
From source file:com.ecofactor.qa.automation.insite.page.DemandSideManagementImpl.java
License:Open Source License
/** * Test available zipcodes are valid./*from w ww. j ava2 s . c om*/ * * @param programid * the programid * @param programName * the program name */ public void testAvailableZipcodesAreValid(int programid, String programName) { loadPageFrame(); DriverConfig.setLogString("select groups tab.", true); mainformElement = DriverConfig.getDriver() .findElement(By.id(demandSideManagementConfig.get(CREATE_EVENT_MAIN_FORM))); WebElement GroupsLink = mainformElement.findElement(By.id(demandSideManagementConfig.get(GROUPS_LINK))); GroupsLink.click(); loadPageFrame(); WaitUtil.waitUntil(5000); WebElement newFormElement = DriverConfig.getDriver() .findElement(By.id(demandSideManagementConfig.get(GROUP_LIST_FORM))); logger.info("check if create group link available and click it.", true); isDisplayedById(DriverConfig.getDriver(), demandSideManagementConfig.get(CREATE_NEW_GROUP_LINK), SHORT_TIMEOUT); WebElement groupsFormElement = retrieveElementByAttributeValueByPassingElement(DriverConfig.getDriver(), newFormElement, TAG_ANCHOR, ATTR_ID, demandSideManagementConfig.get(CREATE_NEW_GROUP_LINK)); groupsFormElement.click(); WaitUtil.waitUntil(SHORT_TIMEOUT); isDisplayedById(DriverConfig.getDriver(), demandSideManagementConfig.get(CREATE_GROUP_FORM), SHORT_TIMEOUT); WebElement createGroupsFormElement = DriverConfig.getDriver() .findElement(By.id(demandSideManagementConfig.get(CREATE_GROUP_FORM))); WaitUtil.waitUntil(5000); isDisplayedById(DriverConfig.getDriver(), demandSideManagementConfig.get(RULE_NAME), SHORT_TIMEOUT); availableZipCodes = createGroupsFormElement.findElements(By.tagName("ul")); availableZipListElement = availableZipCodes.get(0); availableZipCodeElements = availableZipListElement.findElements(By.tagName("li")); DriverConfig.setLogString("get available zip codes from database.", true); List<Region> rules = regionDao .getAvailableZipcodes(lsProgramDao.findById(EcpCoreLSProgram.class, programid).getId()); int count = 0; DriverConfig.setLogString("check if all the available zipcodes are displayed in screen.", true); while (rules.iterator().hasNext()) { Assert.assertTrue( getListFromZipCodeElementList(availableZipCodeElements).contains(rules.get(count).getZip()), "Zipcodes are not available"); count++; } }
From source file:com.ecofactor.qa.automation.insite.page.DemandSideManagementImpl.java
License:Open Source License
/** * Creates the groups.// w w w .ja va 2 s . co m * * @return the string */ public String createGroups() { loadPageFrame(); ecpCoreLSProgram = new EcpCoreLSProgram(); lsProgramId = getProgramId(); DriverConfig.setLogString("get program data from DB.", true); ecpCoreLSProgram = (EcpCoreLSProgram) lsProgramDao.getEcpCoreLSProgram(lsProgramId).get(0); DriverConfig.setLogString("click create groups link.", true); mainformElement = DriverConfig.getDriver() .findElement(By.id(demandSideManagementConfig.get(CREATE_EVENT_MAIN_FORM))); WebElement GroupsLink = mainformElement.findElement(By.id(demandSideManagementConfig.get(GROUPS_LINK))); GroupsLink.click(); WaitUtil.waitUntil(SHORT_TIMEOUT); WaitUtil.waitUntil(5000); logger.info("check if create new group form is displayed."); WebElement newFormElement = DriverConfig.getDriver() .findElement(By.id(demandSideManagementConfig.get(GROUP_LIST_FORM))); isDisplayedById(DriverConfig.getDriver(), demandSideManagementConfig.get(CREATE_NEW_GROUP_LINK), SHORT_TIMEOUT); WebElement groupsFormElement = retrieveElementByAttributeValueByPassingElement(DriverConfig.getDriver(), newFormElement, TAG_ANCHOR, ATTR_ID, demandSideManagementConfig.get(CREATE_NEW_GROUP_LINK)); groupsFormElement.click(); WaitUtil.waitUntil(SHORT_TIMEOUT); isDisplayedById(DriverConfig.getDriver(), demandSideManagementConfig.get(CREATE_GROUP_FORM), SHORT_TIMEOUT); WebElement createGroupsFormElement = DriverConfig.getDriver() .findElement(By.id(demandSideManagementConfig.get(CREATE_GROUP_FORM))); WaitUtil.waitUntil(5000); isDisplayedById(DriverConfig.getDriver(), demandSideManagementConfig.get(RULE_NAME), SHORT_TIMEOUT); DriverConfig.setLogString("find the group name field and provide a name.", true); WebElement groupName = createGroupsFormElement .findElement(By.id(demandSideManagementConfig.get(RULE_NAME))); formatter = new SimpleDateFormat("MMddyyyyhhmma"); eventDate = Calendar.getInstance(); eventDate.setTimeZone(TimeZone.getTimeZone(ecpCoreLSProgram.getTimeZone())); eventDate.set(Calendar.DATE, Integer.parseInt(demandSideManagementConfig.get(ADD_EVENT_DATE_PART))); eventDate.set(Calendar.HOUR, ecpCoreLSProgram.getMinStartHour()); if (ecpCoreLSProgram.getMinStartHour() >= 12) eventDate.set(Calendar.AM_PM, 1); else eventDate.set(Calendar.AM_PM, 0); String group_Name = "GT".concat(formatter.format(eventDate.getTime())); DriverConfig.setLogString("enter group name.", true); groupName.sendKeys(group_Name); DriverConfig.setLogString("enter group description.", true); createGroupsFormElement.findElement(By.id(demandSideManagementConfig.get(RULE_DESC))) .sendKeys("GT" + formatter.format(eventDate.getTime())); availableZipCodes = createGroupsFormElement.findElements(By.tagName("ul")); availableZipListElement = availableZipCodes.get(0); selectedZipListElement = availableZipCodes.get(1); availableZipCodeElements = availableZipListElement.findElements(By.tagName("li")); WebElement addBtn = retrieveElementByAttributeValueByPassingElement(DriverConfig.getDriver(), createGroupsFormElement, TAG_BUTTON, ATTR_TITLE, "Add"); WebElement testRuleElement = retrieveElementByAttributeValueForSubElement(DriverConfig.getDriver(), createGroupsFormElement, TAG_ANCHOR, ATTR_ID, demandSideManagementConfig.get(TEST_RULE_LINK), SHORT_TIMEOUT); int locationsFound = 0; DriverConfig.setLogString("select available zipcodes.", true); while (locationsFound < 6) { createGroupsFormElement = DriverConfig.getDriver() .findElement(By.id(demandSideManagementConfig.get(CREATE_GROUP_FORM))); addBtn = retrieveElementByAttributeValueByPassingElement(DriverConfig.getDriver(), createGroupsFormElement, TAG_BUTTON, ATTR_TITLE, "Add"); testRuleElement = retrieveElementByAttributeValueForSubElement(DriverConfig.getDriver(), createGroupsFormElement, TAG_ANCHOR, ATTR_ID, demandSideManagementConfig.get(TEST_RULE_LINK), SHORT_TIMEOUT); locationsFound = selectOptions(createGroupsFormElement, addBtn, testRuleElement); } DriverConfig.setLogString("click save group button.", true); retrieveElementByAttributeValueForSubElement(DriverConfig.getDriver(), createGroupsFormElement, TAG_BUTTON, ATTR_ID, demandSideManagementConfig.get(SAVE_RULE_BTN), SHORT_TIMEOUT).click(); return group_Name; }
From source file:com.ecofactor.qa.automation.insite.page.DemandSideManagementImpl.java
License:Open Source License
/** * Select options./* w w w .j a v a2 s .co m*/ * * @param createGroupsFormElement * the create groups form element * @param addBtn * the add btn * @param testRuleElement * the test rule element * @return the integer */ public Integer selectOptions(WebElement createGroupsFormElement, WebElement addBtn, WebElement testRuleElement) { availableZipCodes = createGroupsFormElement.findElements(By.tagName("ul")); availableZipListElement = availableZipCodes.get(0); selectedZipListElement = availableZipCodes.get(1); availableZipCodeElements = availableZipListElement.findElements(By.tagName("li")); WebElement listElement = null; @SuppressWarnings("rawtypes") ListIterator element = availableZipCodeElements.listIterator(); listElement = (WebElement) element.next(); logger.info("zip code" + listElement.getText()); listElement.click(); smallWait(); addBtn.click(); smallWait(); testRuleElement.click(); smallWait(); return Integer.parseInt(retrieveElementByAttributeValueByPassingElement(DriverConfig.getDriver(), createGroupsFormElement, "label", ATTR_ID, demandSideManagementConfig.get(NO_LOCATIONS_ELEMENT)) .getText().split(" ")[0].trim()); }
From source file:com.ecofactor.qa.automation.insite.page.DemandSideManagementImpl.java
License:Open Source License
/** * Gets the page size./* ww w. j a va 2 s . com*/ * * @param eventListTable * the event list table * @return the page size */ public Integer getPageSize(WebElement eventListTable) { DriverConfig.setLogString("get the page size displayed in screen.", true); WebElement pageSize = retrieveElementByAttributeValueForSubElement(DriverConfig.getDriver(), eventListTable, TAG_SPAN, ATTR_CLASS, demandSideManagementConfig.get(CURRENT_PAGINATOR), LONG_TIMEOUT); String eventListElement = pageSize.getText(); log(eventListElement.substring(eventListElement.indexOf("of ") + 3, eventListElement.length() - 1)); String pageLength = eventListElement.substring(eventListElement.indexOf("of ") + 3, eventListElement.length() - 1); WaitUtil.waitUntil(1000); logger.info("get the paginator Bottom UI Element."); WebElement paginatorBottomElement = retrieveElementByAttributeValueForSubElement(DriverConfig.getDriver(), eventListTable, "td", ATTR_ID, demandSideManagementConfig.get(EVENT_PAGINATION_BOTTOM_ELEMENT), LONG_TIMEOUT); WaitUtil.waitUntil(1000); List<WebElement> paginatorItems = paginatorBottomElement.findElements(By.tagName(TAG_SPAN)); WaitUtil.waitUntil(1000); paginatorItems.get(paginatorItems.size() - 1).click(); WaitUtil.waitUntil(SHORT_TIMEOUT); logger.info("page size is " + pageLength); return Integer.parseInt(pageLength); }
From source file:com.ecofactor.qa.automation.insite.page.DemandSideManagementImpl.java
License:Open Source License
/** * Test event pagination limit./*www. j a v a2 s . c om*/ * * @param programName * the program name * @param duration * the duration * @param eventMode * the event mode * @param precoolOpted * the precool opted * @param eventCheckCount * the event check count * @throws ParseException * the parse exception */ public void testEventPaginationLimit(final String programName, final String duration, final String eventMode, final boolean precoolOpted, Integer eventCheckCount) throws ParseException { int i = 0; int eventCount = 0; int rowCount = 0; WebElement eventListTable = null; WebElement eventListTableDataRows = null; List<WebElement> paginationSection = null; List<WebElement> eventRows; Integer totalPagesDisplayed = 0; pickGivenProgram(programName); WaitUtil.waitUntil(SHORT_TIMEOUT); ecpCoreLSProgram = new EcpCoreLSProgram(); lsProgramId = getProgramId(); DriverConfig.setLogString("get program details from DB.", true); ecpCoreLSProgram = (EcpCoreLSProgram) lsProgramDao.getEcpCoreLSProgram(lsProgramId).get(0); logger.info("get the event list page form element."); formElement = DriverConfig.getDriver() .findElement(By.id(demandSideManagementConfig.get(EVENT_LIST_PAGE_FORM_NAME))); eventListTable = formElement.findElement(By.id(demandSideManagementConfig.get(FORM_EVENT_LIST_TABLE))); paginationSection = eventListTable .findElements(By.id(demandSideManagementConfig.get(FORM_EVENT_LIST_TABLE_PAGINATOR_BOTTOM))); if (paginationSection.size() > 0) totalPagesDisplayed = getPageSize(eventListTable); mediumWait(); formElement = DriverConfig.getDriver() .findElement(By.id(demandSideManagementConfig.get(EVENT_LIST_PAGE_FORM_NAME))); eventListTable = formElement.findElement(By.id(demandSideManagementConfig.get(FORM_EVENT_LIST_TABLE))); eventListTableDataRows = formElement .findElement(By.id(demandSideManagementConfig.get(FORM_EVENT_LIST_PAGINATION_DATA))); eventRows = eventListTableDataRows.findElements(By.tagName("tr")); rowCount = eventRows.size(); eventCount = 10 - rowCount; if (eventCheckCount == 11) { eventCount = 10 - rowCount; eventCount++; } logger.info("event Check Count: " + eventCheckCount); logger.info("event Count: " + eventCount); logger.info("pagination Section size: " + paginationSection.size()); logger.info("Total pages: " + totalPagesDisplayed); logger.info("Row count: " + rowCount); while (i < eventCount) { formatter = new SimpleDateFormat("MM/dd/yyyy hh:mm a"); eventDate = Calendar.getInstance(); eventDate.setTimeZone(TimeZone.getTimeZone(ecpCoreLSProgram.getTimeZone())); logger.info("program minimum start time :" + ecpCoreLSProgram.getMinStartHour()); eventDate.add(Calendar.DATE, Integer.parseInt(demandSideManagementConfig.get(ADD_EVENT_DATE_PART))); eventDate.set(Calendar.HOUR, ecpCoreLSProgram.getMinStartHour()); if (ecpCoreLSProgram.getMinStartHour() >= 12) eventDate.set(Calendar.AM_PM, 1); else eventDate.set(Calendar.AM_PM, 0); createEvent(false, formatter.format(eventDate.getTime()), duration, eventMode, precoolOpted, null); WaitUtil.waitUntil(5000); i++; } smallWait(); eventListTable = formElement.findElement(By.id(demandSideManagementConfig.get(FORM_EVENT_LIST_TABLE))); paginationSection = eventListTable .findElements(By.id(demandSideManagementConfig.get(FORM_EVENT_LIST_TABLE_PAGINATOR_BOTTOM))); DriverConfig.setLogString("check if new page displayed if event count greater than 10.", true); if (eventCheckCount == 10) { if (paginationSection.size() > 0) { Assert.assertTrue(totalPagesDisplayed.equals(getPageSize(eventListTable)), "page size is different"); } else { Assert.assertTrue(totalPagesDisplayed == 0, "page count is not zero"); } } else { if (paginationSection.size() > 0) { Assert.assertFalse(totalPagesDisplayed.equals(getPageSize(eventListTable)), "page size is different"); } else { Assert.assertTrue(totalPagesDisplayed > 0, "page count is less than zero"); } } }
From source file:com.ecofactor.qa.automation.insite.page.DemandSideManagementImpl.java
License:Open Source License
/** * Create Event Method creates LS Event in a given LS Program. Start date , * duration and mode (draft/save & schedule) for event creation are provided * as input ./* w ww.java2 s.c o m*/ * * @param pastEvent * the past event * @param startDate * the start date * @param duration * the duration * @param mode * the mode * @param precoolOpted * the precool opted * @param groupName * the group name * @return the string * @throws ParseException * the parse exception */ public String createEvent(final boolean pastEvent, final String startDate, final String duration, final String mode, final boolean precoolOpted, String groupName) throws ParseException { DriverConfig.setLogString("Start create new event.", true); formatter = new SimpleDateFormat("yyyyMMddhhmmss"); WaitUtil.waitUntil(18000); // WaitUtil.waitUntil(10000); isDisplayedById(DriverConfig.getDriver(), demandSideManagementConfig.get(EVENT_LIST_PAGE_FORM_NAME), SHORT_TIMEOUT); formElement = DriverConfig.getDriver() .findElement(By.id(demandSideManagementConfig.get(EVENT_LIST_PAGE_FORM_NAME))); DriverConfig.setLogString("click create new event link.", true); WebElement newEventLink = formElement.findElement(By.linkText(demandSideManagementConfig.get(NEW_EVENT))); newEventLink.click(); inputEventName = "Test_" + formatter.format(new java.util.Date()); inputEventDesc = "Description for Test_" + formatter.format(new java.util.Date()); isDisplayedById(DriverConfig.getDriver(), demandSideManagementConfig.get(EVENT_CREATE_FORM_NAME), SHORT_TIMEOUT); newEventWizardForm = DriverConfig.getDriver() .findElement(By.id(demandSideManagementConfig.get(EVENT_CREATE_FORM_NAME))); WaitUtil.waitUntil(5000); DriverConfig.setLogString("find event name field.", true); WebElement eventName = newEventWizardForm.findElement(By.id(demandSideManagementConfig.get(EVENT_NAME))); DriverConfig.setLogString("Enter event name." + inputEventName, true); eventName.sendKeys(inputEventName); DriverConfig.setLogString("find event description field & send values to it.", true); newEventWizardForm.findElement(By.tagName(TAG_TEXTAREA)).sendKeys(inputEventDesc); DriverConfig.setLogString("Event Name provided :" + inputEventName, true); DriverConfig.setLogString("Event Desc provided :" + inputEventDesc, true); DriverConfig.setLogString("Event Start date provided :" + startDate, true); DriverConfig.setLogString("find start date field and enter start date.", true); newEventWizardForm.findElement(By.id(demandSideManagementConfig.get(START_TIME))).clear(); newEventWizardForm.findElement(By.id(demandSideManagementConfig.get(START_TIME))).sendKeys(startDate); roleManagement.clickDone(); DriverConfig.setLogString("find event duration field.", true); isFormDisplayedById(DriverConfig.getDriver(), newEventWizardForm, demandSideManagementConfig.get(EVENT_DURATION_ELEMENT), SHORT_TIMEOUT); DriverConfig.setLogString("select duration.", true); selectOptionByValue(newEventWizardForm, demandSideManagementConfig.get(EVENT_DURATION_ELEMENT), duration); DriverConfig.setLogString("Event Duration provided :" + duration + " minutes.", true); WaitUtil.waitUntil(1000); WebElement precoolOption = newEventWizardForm.findElement(By.id(demandSideManagementConfig.get(PRECOOL))); newEventWizardForm.findElement(By.id(demandSideManagementConfig.get(EVENT_DURATION_ELEMENT))).click(); DriverConfig.setLogString("select precool option if needed.", true); WaitUtil.waitUntil(SHORT_TIMEOUT); if (precoolOpted) { isFormElementClickableById(DriverConfig.getDriver(), demandSideManagementConfig.get(PRECOOL), MEDIUM_TIMEOUT); if (precoolOption.isSelected() == false) precoolOption.click(); } smallWait(); // DriverConfig.setLogString("Unselect the group for event.", true); // select groups WebElement selectGroupsForm = DriverConfig.getDriver() .findElement(By.id(demandSideManagementConfig.get(POPUP_FORM))); if (groupName != null) { DriverConfig.setLogString("select groups for event." + groupName, true); retrieveElementByAttributeValueByPassingElement(DriverConfig.getDriver(), selectGroupsForm, TAG_SPAN, ATTR_CLASS, demandSideManagementConfig.get(SELECT_GROUPS_CHECKBOX)).click(); WebElement groupsTableElement = retrieveElementByAttributeValueByPassingElement( DriverConfig.getDriver(), selectGroupsForm, TAG_TBODY, ATTR_ID, demandSideManagementConfig.get(GROUP_LIST_TABLE)); List<WebElement> groupRows = groupsTableElement.findElements(By.tagName("tr")); for (WebElement element : groupRows) { List<WebElement> groupColumns = element.findElements(By.tagName("td")); if (!groupColumns.isEmpty()) { WebElement checkBoxElement = groupColumns.get(0).findElement(By.tagName(TAG_INPUT)); WebElement groupNameElement = groupColumns.get(1); if (groupNameElement.findElement(By.tagName(TAG_DIV)).getText().equalsIgnoreCase(groupName)) // select the group name check box checkBoxElement.click(); } } } // End Select groups DriverConfig.setLogString("Mode " + mode, true); smallWait(); isFormDisplayedById(DriverConfig.getDriver(), newEventWizardForm, demandSideManagementConfig.get(EVENT_SAVE_BTN), MEDIUM_TIMEOUT); if (mode.equalsIgnoreCase(demandSideManagementConfig.get(EVENT_TYPE_DRAFT))) { WaitUtil.waitUntil(SHORT_TIMEOUT); DriverConfig.setLogString("click draft button.", true); newEventWizardForm.findElement(By.id(demandSideManagementConfig.get(EVENT_SAVE_BTN))).click(); } else if (mode.equalsIgnoreCase(demandSideManagementConfig.get(EVENT_TYPE_SCHEDULED))) { WaitUtil.waitUntil(SHORT_TIMEOUT); DriverConfig.setLogString("click schedule button.", true); newEventWizardForm.findElement(By.id(demandSideManagementConfig.get(EVENT_SCHEDULED_BTN))).click(); } else { smallWait(); DriverConfig.setLogString("click cancel button.", true); newEventWizardForm.findElement(By.id(demandSideManagementConfig.get(EVENT_CANCEL_BTN))).click(); } return inputEventName; }
From source file:com.ecofactor.qa.automation.insite.page.DemandSideManagementImpl.java
License:Open Source License
/** * select Event Link Initiates event search by loading event list page. * /*from www. j a v a 2 s.co m*/ * @param inputEventName * the input event name */ public void selectEventLink(String inputEventName) { DriverConfig.setLogString("Select the event " + inputEventName + " from the list.", true); loadPageFrame(); WaitUtil.waitUntil(10000); logger.info("check if event list form displayed."); WebElement formElement = DriverConfig.getDriver() .findElement(By.id(demandSideManagementConfig.get(EVENT_LIST_PAGE_FORM_NAME))); isDisplayedById(DriverConfig.getDriver(), demandSideManagementConfig.get(EVENT_LIST_PAGE_FORM_NAME), SHORT_TIMEOUT); mediumWait(); logger.info("check if event pagination element is displayed.", true); if (formElement.findElements(By.id(demandSideManagementConfig.get(EVENT_PAGINATION_BOTTOM_ELEMENT))) .size() > 0) { isFormDisplayedById(DriverConfig.getDriver(), formElement, demandSideManagementConfig.get(EVENT_PAGINATION_BOTTOM_ELEMENT), SHORT_TIMEOUT); WebElement eventIndexElement = retrieveElementByAttributeValue(DriverConfig.getDriver(), TAG_TD, ATTR_ID, demandSideManagementConfig.get(EVENT_PAGINATION_BOTTOM_ELEMENT)); if (eventIndexElement != null) { WebElement pageIndexElement = formElement .findElement(By.id(demandSideManagementConfig.get(EVENT_PAGINATION_BOTTOM_ELEMENT))); List<WebElement> pageIndexes = pageIndexElement.findElements(By.tagName(TAG_SPAN)); lastPageElement = pageIndexes.get(pageIndexes.size() - 1); if (!lastPageElement.getAttribute(ATTR_CLASS).endsWith(demandSideManagementConfig.get(DISABLED))) { lastPageElement.click(); smallWait(); } nextPageElement = pageIndexes.get(pageIndexes.size() - 4); iterateEventList(); } } else { logger.info("there is no pagination select event in the default page."); WebElement eventElement = retrieveElementByTagTextForSubElement(DriverConfig.getDriver(), formElement, TAG_ANCHOR, inputEventName); if (eventElement != null) { smallWait(); DriverConfig.setLogString("select the event link.", true); eventElement.click(); eventfound = true; } } if (eventfound == false) { DriverConfig.setLogString("Event name '" + inputEventName + "' not found.", true); } loadPageFrame(); isDisplayedById(DriverConfig.getDriver(), demandSideManagementConfig.get(EVENT_CREATE_FORM_NAME), SHORT_TIMEOUT); }