Skip to content
This repository was archived by the owner on Feb 2, 2025. It is now read-only.

Commit 7fd5f20

Browse files
committed
Merge branch 'develop' of github.com:Hi-Fi/robotframework-seleniumlibrary-java into release/3.141.59.26
2 parents b63c1b8 + 2fefaee commit 7fd5f20

File tree

3 files changed

+15
-14
lines changed

3 files changed

+15
-14
lines changed

src/main/java/com/github/markusbernhardt/seleniumlibrary/keywords/Element.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -757,7 +757,7 @@ public void clickLink(String locator) {
757757
public ArrayList<String> getAllLinks() {
758758
ArrayList<String> ret = new ArrayList<String>();
759759

760-
List<WebElement> elements = elementFind("tag=a", false, false, "a");
760+
List<WebElement> elements = elementFind("tag:a", false, false, "a");
761761
for (WebElement element : elements) {
762762
ret.add(element.getAttribute("id"));
763763
}
@@ -861,8 +861,8 @@ public void pageShouldNotContainImage(String locator, String...params) {
861861
"If you wish to assert the number of located elements, use `Xpath Should Match X Times`.")
862862
@ArgumentNames({ "xpath" })
863863
public int getMatchingXpathCount(String xpath) {
864-
if (!xpath.startsWith("xpath=")) {
865-
xpath = "xpath=" + xpath;
864+
if (!xpath.startsWith("xpath=") && !xpath.startsWith("xpath:")) {
865+
xpath = "xpath:" + xpath;
866866
}
867867
List<WebElement> elements = elementFind(xpath, false, false);
868868

@@ -874,8 +874,8 @@ public int getMatchingXpathCount(String xpath) {
874874
public void xpathShouldMatchXTimes(String xpath, int expectedXpathCount, String...params) {
875875
String message = robot.getParamsValue(params, 0, "");
876876
String logLevel = robot.getParamsValue(params, 1, "INFO");
877-
if (!xpath.startsWith("xpath=")) {
878-
xpath = "xpath=" + xpath;
877+
if (!xpath.startsWith("xpath=") && !xpath.startsWith("xpath:")) {
878+
xpath = "xpath:" + xpath;
879879
}
880880
List<WebElement> elements = elementFind(xpath, false, false);
881881
int actualXpathCount = elements.size();
@@ -932,7 +932,7 @@ protected boolean frameContains(String locator, String text) {
932932
}
933933

934934
protected boolean isTextPresent(String text) {
935-
String locator = String.format("xpath=//*[contains(., %s)]", escapeXpathValue(text));
935+
String locator = String.format("xpath://*[contains(., %s)]", escapeXpathValue(text));
936936

937937
return isElementPresent(locator);
938938
}
@@ -1015,7 +1015,7 @@ protected boolean pageContains(String text) {
10151015
return true;
10161016
}
10171017

1018-
List<WebElement> elements = elementFind("xpath=//frame|//iframe", false, false);
1018+
List<WebElement> elements = elementFind("xpath://frame|//iframe", false, false);
10191019
Iterator<WebElement> it = elements.iterator();
10201020
while (it.hasNext()) {
10211021
current.switchTo().frame(it.next());

src/main/java/com/github/markusbernhardt/seleniumlibrary/keywords/FormElement.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ public void submitForm() {
4949
public void submitForm(String locator) {
5050
logging.info(String.format("Submitting form '%s'.", locator));
5151
if (locator == null) {
52-
locator = "xpath=//form";
52+
locator = "xpath://form";
5353
}
5454
List<WebElement> webElements = element.elementFind(locator, true, true, "form");
5555
webElements.get(0).submit();
@@ -428,13 +428,13 @@ protected WebElement getCheckbox(String locator) {
428428
}
429429

430430
protected List<WebElement> getRadioButtons(String groupName) {
431-
String xpath = String.format("xpath=//input[@type='radio' and @name='%s']", groupName);
431+
String xpath = String.format("xpath://input[@type='radio' and @name='%s']", groupName);
432432
logging.debug("Radio group locator: " + xpath);
433433
return element.elementFind(xpath, false, true);
434434
}
435435

436436
protected WebElement getRadioButtonWithValue(String groupName, String value) {
437-
String xpath = String.format("xpath=//input[@type='radio' and @name='%s' and (@value='%s' or @id='%s')]",
437+
String xpath = String.format("xpath://input[@type='radio' and @name='%s' and (@value='%s' or @id='%s')]",
438438
groupName, value, value);
439439
logging.debug("Radio group locator: " + xpath);
440440
return element.elementFind(xpath, true, true).get(0);

src/main/java/com/github/markusbernhardt/seleniumlibrary/locators/TableElementFinder.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -85,13 +85,14 @@ protected static void addLocatorSuffix(Map<String, List<String>> locatorSuffixes
8585
protected static List<String> parseTableLocator(String tableLocator, String locationMethod) {
8686
String tableLocatorType = null;
8787

88-
if (tableLocator.startsWith("xpath=")) {
88+
if (tableLocator.startsWith("xpath=") || tableLocator.startsWith("xpath:")) {
8989
tableLocatorType = "xpath.";
90-
} else if (tableLocator.startsWith("jquery=") || tableLocator.startsWith("sizzle=")) {
90+
} else if (tableLocator.startsWith("jquery=") || tableLocator.startsWith("jquery:") ||
91+
tableLocator.startsWith("sizzle=") || tableLocator.startsWith("sizzle:")) {
9192
tableLocatorType = "sizzle.";
9293
} else {
93-
if (!tableLocator.startsWith("css=")) {
94-
tableLocator = String.format("css=table#%s", tableLocator);
94+
if (!tableLocator.startsWith("css=") && !tableLocator.startsWith("css:")) {
95+
tableLocator = String.format("css:table#%s", tableLocator);
9596
}
9697
tableLocatorType = "css.";
9798
}

0 commit comments

Comments
 (0)