diff --git a/src/org/labkey/test/components/ui/edit/EditInlineField.java b/src/org/labkey/test/components/ui/edit/EditInlineField.java index d093871956..155c20547a 100644 --- a/src/org/labkey/test/components/ui/edit/EditInlineField.java +++ b/src/org/labkey/test/components/ui/edit/EditInlineField.java @@ -15,7 +15,7 @@ public class EditInlineField extends WebDriverComponent.ElementCache { - final WebElement label = Locator.tagWithClass("span", "edit-inline-field__label") + final WebElement label = Locator.byClass("edit-inline-field__label") .refindWhenNeeded(this); - final Locator toggleLoc = Locator.tagWithClass("span", "edit-inline-field__toggle"); + final Locator toggleLoc = Locator.byClass("edit-inline-field__toggle"); final Locator pencilLoc = Locator.tagWithClass("i", "fa-pencil"); final WebElement input = Locator.css("input.form-control, input.select-input__input, textarea.form-control").refindWhenNeeded(this); WebElement placeholderElement() { - return Locator.tagWithClass("span", "edit-inline-field__placeholder") + return Locator.byClass("edit-inline-field__placeholder") .findElement(this); } @@ -166,7 +166,7 @@ protected Locator locator() { if (_label != null) return _baseLocator.withChild( - Locator.tagWithClass("span", "edit-inline-field__label") + Locator.byClass("edit-inline-field__label") .containing(_label)); else return _baseLocator; diff --git a/src/org/labkey/test/components/ui/navigation/SubNavBar.java b/src/org/labkey/test/components/ui/navigation/SubNavBar.java index e6e98cb4a9..ef05d7e8b0 100644 --- a/src/org/labkey/test/components/ui/navigation/SubNavBar.java +++ b/src/org/labkey/test/components/ui/navigation/SubNavBar.java @@ -37,12 +37,17 @@ static public SubNavBarFinder finder(WebDriver driver) public boolean hasTab(String tabText) { - return getWrapper().isElementPresent(elementCache().getTabLocator(tabText)); + return getWrapper().isElementPresent(elementCache().getTabLocator(tabText, false)); } public void clickTab(String tabText) { - elementCache().getTab(tabText).click(); + clickTab(tabText, false); + } + + public void clickTab(String tabText, boolean startsWithText) + { + elementCache().getTab(tabText, startsWithText).click(); } public String getActiveTab() @@ -101,15 +106,17 @@ protected class ElementCache extends Component.ElementCache WebElement tabScrollContainer = Locator.tagWithClass("div", "tab-scroll-ct").findWhenNeeded(this); WebElement activeTab = Locator.css("ul.navbar-nav > li.active").findWhenNeeded(this); - Locator.XPathLocator getTabLocator(String text) + Locator.XPathLocator getTabLocator(String text, boolean startsWithText) { - return Locator.tagWithClass("ul", "nav navbar-nav") - .child(Locator.tag("li")).withText(text); + Locator.XPathLocator loc = Locator.tagWithClass("ul", "nav navbar-nav").child(Locator.tag("li")); + if (startsWithText) + return loc.startsWith(text); + return loc.withText(text); } - WebElement getTab(String text) + WebElement getTab(String text, boolean startsWithText) { - return getTabLocator(text).findElement(this); + return getTabLocator(text, startsWithText).findElement(this); } }