Example usage for org.openqa.selenium WebElement sendKeys

List of usage examples for org.openqa.selenium WebElement sendKeys

Introduction

In this page you can find the example usage for org.openqa.selenium WebElement sendKeys.

Prototype

void sendKeys(CharSequence... keysToSend);

Source Link

Document

Use this method to simulate typing into an element, which may set its value.

Usage

From source file:com.ecfeed.core.runner.java.SeleniumTestMethodInvoker.java

License:Open Source License

private boolean performAction(WebElement webElement, String argument, MethodParameterNode methodParameterNode) {

    String action = methodParameterNode.getPropertyValue(NodePropertyDefs.PropertyId.PROPERTY_ACTION);

    if (action == null) {
        reportException("Action is undefined.", methodParameterNode);
    }/* w  ww .j  ava2 s .  c  o m*/

    if (NodePropertyDefs.isActionSendKeys(action)) {
        webElement.sendKeys(argument);
        return true;
    }

    if (NodePropertyDefs.isActionClick(action)) {
        webElement.click();
        return true;
    }

    if (NodePropertyDefs.isActionSubmit(action)) {
        webElement.submit();
        return true;
    }

    return false;
}

From source file:com.ecofactor.qa.automation.insite.page.DemandSideManagementImpl.java

License:Open Source License

/**
 * Creates the groups.//w ww .  j a v  a 2  s.  c  om
 * 
 * @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

/**
 * 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 ./*from   ww w. j a  va 2 s .co  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

/**
 * Edits an event and saves it in either draft/scheduled mode.
 * /*from w  ww.  ja v  a  2s . com*/
 * @param mode
 *            the mode
 * @return the map
 */
public Map<String, Object> editEvent(String mode) {

    DriverConfig.setLogString("start edit event.", true);
    Map<String, Object> updatedEventDetails = new HashMap<String, Object>();
    logger.info("check if edit event form visible.", true);
    WebElement newFormElement = DriverConfig.getDriver()
            .findElement(By.id(demandSideManagementConfig.get(EVENT_CREATE_FORM_NAME)));
    String updatedEventDesc;
    if (newFormElement != null) {

        updatedEventDesc = formatter.format(new Date());
        WebElement saveBtnLink = null;
        WaitUtil.waitUntil(10000);
        DriverConfig.setLogString("check if event description element is available.", true);
        WebElement eventDescElement = retrieveElementByAttributeValueContainsForSubElement(
                DriverConfig.getDriver(), newFormElement, TAG_TEXTAREA, "name",
                demandSideManagementConfig.get(EVENT_DESC), SHORT_TIMEOUT);
        eventDescElement.clear();

        eventDescElement.sendKeys(updatedEventDesc);
        updatedEventDetails.put("eventDesc", updatedEventDesc);
        DriverConfig.setLogString("check if precool selection is available.", true);
        WebElement preCool = retrieveElementByAttributeValueContainsForSubElement(DriverConfig.getDriver(),
                newFormElement, TAG_INPUT, ATTR_ID, demandSideManagementConfig.get(PRECOOL), SHORT_TIMEOUT);
        DriverConfig.setLogString("select precool option", true);
        if (isDisplayedById(DriverConfig.getDriver(), demandSideManagementConfig.get(PRECOOL), SHORT_TIMEOUT))
            preCool.click();

        DriverConfig.setLogString("Mode " + mode, true);
        if (mode.equalsIgnoreCase(demandSideManagementConfig.get(EVENT_TYPE_DRAFT))) {
            DriverConfig.setLogString("check if save draft button is available.", true);
            saveBtnLink = retrieveElementByAttributeValueContainsForSubElement(DriverConfig.getDriver(),
                    newFormElement, TAG_BUTTON, ATTR_ID, demandSideManagementConfig.get(SAVE_DRAFT),
                    SHORT_TIMEOUT);
            DriverConfig.setLogString("click save draft button.", true);
            saveBtnLink.click();
        } else {
            DriverConfig.setLogString("check if schedule button is available.", true);
            saveBtnLink = retrieveElementByAttributeValueContainsForSubElement(DriverConfig.getDriver(),
                    newFormElement, TAG_BUTTON, ATTR_ID, demandSideManagementConfig.get(EVENT_SCHEDULED_BTN),
                    SHORT_TIMEOUT);
            DriverConfig.setLogString("click schedule draft.", true);
            saveBtnLink.click();

        }
        smallWait();
        DriverConfig.setLogString("Completed editing the event.", true);
    }

    return updatedEventDetails;
}

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 ./*ww  w . j  av a 2  s.  co  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 createEventWithoutStartTime(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.InsiteInstallationPageImpl.java

License:Open Source License

/**
 * Search by street address.//from   w  w w  .j a  va 2  s  .c  o m
 * 
 * @param streetAddress
 *            the street address
 * @see com.ecofactor.qa.automation.insite.page.UserManagement#searchByStreetAddress(java.lang.String)
 */
@Override
public void searchByStreetAddress(final String streetAddress) {

    DriverConfig.setLogString("Find Street Address : " + streetAddress, true);
    final WebElement address = DriverConfig.getDriver().findElement(By.id(userConfig.get(ADDRESS)));
    address.sendKeys(streetAddress);
}

From source file:com.ecofactor.qa.automation.insite.page.InstallationHardwareImpl.java

License:Open Source License

/**
 * Save thermostat name./*from w w  w. j av  a2 s  .c o  m*/
 * @param thermostatName the thermostat name
 * @see com.ecofactor.qa.automation.insite.page.InstallationHardware#saveThermostatName(java.lang.String)
 */
@Override
public void saveThermostatName(String thermostatName) {
    DriverConfig.setLogString("Provide name to existig thermostat.", true);
    smallWait();
    WebElement tblHomeProfile = retrieveElementByAttributeValue(DriverConfig.getDriver(), TAG_TABLE, ATTR_ID,
            "homeProfile");
    logger.info("tblHomeProfile: " + tblHomeProfile.getAttribute("class"));
    WebElement hiddenElement = retrieveElementByAttributeValueByPassingElement(DriverConfig.getDriver(),
            tblHomeProfile, "input", "type", "hidden");
    //ForSubElement(driver, tblHomeProfile, TAG_INPUT, "type", "hidden", SHORT_TIMEOUT);
    logger.info("Hidden value: " + hiddenElement.getAttribute("value"));
    String thermostatFld = hiddenElement.getAttribute("value");
    DriverConfig.setLogString("Enter value for thermostat name as " + thermostatName + ".", true);
    WebElement fldThermostatName = retrieveElementByAttributeValue(DriverConfig.getDriver(), TAG_INPUT, ATTR_ID,
            thermostatFld);
    fldThermostatName.clear();
    fldThermostatName.sendKeys(thermostatName);
    DriverConfig.setLogString("Click link gateway", true);
    WebElement LinkGateWayBtn = retrieveElementByAttributeValue(DriverConfig.getDriver(), TAG_INPUT, ATTR_ID,
            "nextStepButton");
    LinkGateWayBtn.click();
    smallWait();

}

From source file:com.ecofactor.qa.automation.insite.page.InstallationHardwareImpl.java

License:Open Source License

@Override
public void addThermostat(String thermostatName) {
    smallWait();/*w w w . j  a v  a  2  s .c o  m*/
    WebElement getAddressDiv = retrieveElementByAttributeValue(DriverConfig.getDriver(), TAG_DIV, ATTR_ID,
            "getAddressDiv");
    logger.info("getAddressDiv ID: " + getAddressDiv.getAttribute("id"));

    WebElement tblHomeProfile = retrieveElementByAttributeValue(DriverConfig.getDriver(), TAG_TABLE, ATTR_ID,
            "homeProfile");
    logger.info("tblHomeProfile: " + tblHomeProfile.getAttribute("class"));

    List<WebElement> newlyAddedTstats = retrieveElementsByContainsOfAttributeValue(DriverConfig.getDriver(),
            TAG_TD, ATTR_CLASS, "ef_dataTable toCountThermostats");
    WebElement newlyAddedTstat = newlyAddedTstats.get(newlyAddedTstats.size() - 1);

    logger.info("Newly Added thermostat: " + newlyAddedTstat.getTagName(), true);
    DriverConfig.setLogString("Enter name for existing thermostat field as 'TestTstat'.", true);
    WebElement newTstatName = retrieveElementByAttributeValueByPassingElement(DriverConfig.getDriver(),
            newlyAddedTstat, TAG_INPUT, ATTR_TYPE, "text");
    newTstatName.clear();
    newTstatName.sendKeys("TestTstat");
    tinyWait();

    //click add link
    DriverConfig.setLogString("Click add thermostat link.", true);
    WebElement addThermostatElement = retrieveElementByAttributeValueByPassingElement(DriverConfig.getDriver(),
            getAddressDiv, TAG_ANCHOR, ATTR_ID, "addThermostat");
    addThermostatElement.click();
    tinyWait();

    tblHomeProfile = retrieveElementByAttributeValue(DriverConfig.getDriver(), TAG_TABLE, ATTR_ID,
            "homeProfile");
    logger.info("tblHomeProfile: " + tblHomeProfile.getAttribute("class"), true);

    newlyAddedTstats = retrieveElementsByContainsOfAttributeValue(DriverConfig.getDriver(), TAG_TD, ATTR_CLASS,
            "ef_dataTable toCountThermostats");
    newlyAddedTstat = newlyAddedTstats.get(newlyAddedTstats.size() - 1);

    logger.info("newlyAddedTstat: " + newlyAddedTstat.getTagName(), true);
    DriverConfig.setLogString("Enter name for newly added thermostat" + thermostatName + ".", true);
    WebElement newTstatNameFld = retrieveElementByAttributeValueByPassingElement(DriverConfig.getDriver(),
            newlyAddedTstat, TAG_INPUT, ATTR_TYPE, "text");
    newTstatNameFld.sendKeys(thermostatName);
    DriverConfig.setLogString("Click link gateway", true);
    WebElement LinkGateWayBtn = retrieveElementByAttributeValue(DriverConfig.getDriver(), TAG_INPUT, ATTR_ID,
            "nextStepButton");
    LinkGateWayBtn.click();
    tinyWait();
}

From source file:com.ecofactor.qa.automation.insite.page.OnBoardImpl.java

License:Open Source License

/**
 * Upload and submit file./*from w w  w.  j a va  2  s.c  o m*/
 * @param filePath the file path
 * @see com.ecofactor.qa.automation.insite.page.OnBoard#uploadAndSubmitFile(java.lang.String)
 */
public void uploadAndSubmitFile(String filePath) {
    largeWait();
    DriverConfig.setLogString("Upload the file prepared and click submit." + filePath, true);
    WebElement csvFile = DriverConfig.getDriver().findElement(By.id(onBoardConfig.get(FILE_INPUT)));
    csvFile.sendKeys(filePath);
    DriverConfig.getDriver().findElement(By.id(onBoardConfig.get(FILE_SUBMIT))).submit();
}

From source file:com.ecofactor.qa.automation.insite.page.PartnerManagementImpl.java

License:Open Source License

/**
 * Search By Name.// w  w w . j  a  va2s  .  co m
 * @param partnerName the partner name
 * @see com.ecofactor.qa.automation.insite.page.PartnerManagement#searchByName(java.lang.String)
 */
@Override
public void searchByName(String partnerName) {

    LogUtil.setLogString("Search Partner by Name :" + partnerName, true);
    final WebElement textBoxElement = DriverConfig.getDriver()
            .findElement(By.id(partnerConfig.get(PARTNER_FEILD_ID)));
    textBoxElement.sendKeys(partnerName);
}