Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ---common task
- public static String selectFromDropDownByIndex_noButton_webElementList_multiRandomSelect(WebDriver driver, List<WebElement> dropDownListElementList, String dropDownName, Integer nrOfMultiSelectItems) {
- String selectedNames = "DefaultValue";
- Map<Integer, String> selectedNamesMap = new HashMap<>();
- Actions keyActionsAndClick = new Actions(driver);
- try {
- Waiting.elementsToBeVisible(driver, dropDownListElementList, dropDownName);
- keyActionsAndClick.keyDown(Keys.CONTROL);
- for (int i = 0; i < nrOfMultiSelectItems; i++) {
- int randomNumber = ThreadLocalRandom.current().nextInt(1, dropDownListElementList.size());
- WebElement selectedWebElement = dropDownListElementList.get(randomNumber);
- if (!selectedWebElement.isSelected()) {
- String selectedName = selectedWebElement.getText();
- Log4Test.info("- select element \"" + selectedName + "\" from drop down list " + dropDownName);
- selectedNamesMap.put(randomNumber, selectedName);
- keyActionsAndClick.click(selectedWebElement);
- }
- }
- keyActionsAndClick.keyUp(Keys.CONTROL).build().perform();
- selectedNames = selectedNamesMap.values().toString().replace("[", "").replace("]", "");
- } catch (NoSuchElementException e) {
- Assert.fail(Log4Test.error("List element not found: " + dropDownName));
- }
- return selectedNames;
- }
- public static String getTExtFromDropDownMultipleSelectedList(WebDriver driver, List<WebElement> dropDownListElementList, String dropDownName) {
- String selectedNames = "DefaultValue";
- Map<Integer, String> selectedNamesMap = new HashMap<>();
- try {
- int i = 0;
- Waiting.elementsToBeVisible(driver, dropDownListElementList, dropDownName);
- for (WebElement dropDownListElement : dropDownListElementList) {
- selectedNamesMap.put(i, dropDownListElement.getText());
- i++;
- }
- selectedNames = selectedNamesMap.values().toString().replace("[", "").replace("]", "");
- } catch (NoSuchElementException e) {
- Assert.fail(Log4Test.error("List element not found: " + dropDownName));
- }
- return selectedNames;
- }
- --- page object
- public String randomSelectedStates = "defaultValue";
- public String selectedStates = "defaultValue";
- public String selectState_random_number(Integer nrOfMultiSelectItems) {
- CommonTask.clickElement(driver, multiSelectStateLisButton, "State search box");
- String randomSelectedStatesUnSorted = CommonTask.selectFromDropDownByIndex_noButton_webElementList_multiRandomSelect(driver, searchDefaultResults, "State search box", nrOfMultiSelectItems);
- CommonTask.clickElement(driver, multiSelectStateLisButton, "State search box");
- ArrayList<String> stateUnsortedList = new ArrayList<>(Arrays.asList(randomSelectedStatesUnSorted.split(",")));
- stateUnsortedList.sort(Collator.getInstance());
- randomSelectedStates = stateUnsortedList.toString().replace(" ", " ").replace("]", "").replace("[ ", "");
- return randomSelectedStates;
- }
- public String getTextFromSelectedStates() {
- selectedStates = CommonTask.getTExtFromDropDownMultipleSelectedList(driver, selectedStatesLocator, "State search box").replace("×", "");
- return selectedStates;
- }
- --- test
- jQueryDropDown_Page.selectState_random_number(3);
- jQueryDropDown_Page.getTextFromSelectedStates();
- Assert.assertEquals(jQueryDropDown_Page.randomSelectedStates, jQueryDropDown_Page.selectedStates);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement