Skip to content

Commit

Permalink
Test coverage for identifying fields in media, registry, samples in b…
Browse files Browse the repository at this point in the history
…iologics
  • Loading branch information
labkey-chrisj committed Nov 25, 2024
1 parent f6152bc commit 4b53b12
Showing 1 changed file with 18 additions and 20 deletions.
38 changes: 18 additions & 20 deletions src/org/labkey/test/components/react/SelectInputOption.java
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,15 @@ public boolean isFocused()

public Map<String, String> getData()
{
return elementCache().getData();
List<WebElement> fieldRows = elementCache().identifyingFieldLoc.findElements(this);
Map<String, String> data = new CaseInsensitiveHashMap<>();
for(WebElement fieldRow : fieldRows)
{
String fieldLabel = elementCache().fieldLabelLoc.findElement(fieldRow).getText();
String fieldValue = elementCache().fieldValueLoc.findElement(fieldRow).getText();
data.put(StringUtils.stripEnd(fieldLabel, ":"), fieldValue);
}
return data;
}

@Override
Expand All @@ -69,21 +77,10 @@ protected ElementCache elementCache()

protected class ElementCache extends Component<?>.ElementCache
{
public Locator.XPathLocator text_truncatePairLoc = Locator.tagWithClass("div", "text__truncate");

public Map<String, String> getData()
{
Map<String, String> data = new CaseInsensitiveHashMap<>();
var elements = text_truncatePairLoc.findElements(this);
for (WebElement el : elements)
{
WebElement keyEl = Locator.tagWithClass("span", "identifying_field_label").findElement(el);
WebElement valEl = Locator.tag("span").findElements(el).get(1);
data.put(StringUtils.stripEnd(keyEl.getText(), ":"), valEl.getText());
}
return data;
}

public Locator.XPathLocator fieldLabelLoc = Locator.tagWithClass("span", "identifying_field_label");
public Locator.XPathLocator identifyingFieldLoc = Locator.tag("div")
.withChild(fieldLabelLoc);
public Locator fieldValueLoc = fieldLabelLoc.followingSibling("span");
}


Expand Down Expand Up @@ -116,10 +113,11 @@ protected SelectInputOption construct(WebElement el, WebDriver driver)
protected Locator locator()
{
if (_key != null)
return _baseLocator.withChild(Locator.tagWithClass("div", "text__truncate")
.withChild(Locator.tagWithText("strong",_key))
.parent() // children are siblings
.withChild(Locator.tagWithAttributeContaining("span", "title", _value)));
return _baseLocator.withChild(
Locator.tag("div").withChild(
Locator.tagWithClass("span", "identifying_field_label").withText(_key + ":")
.parent()) // children are siblings
.withChild(Locator.tagWithText("span", _value)));
else
return _baseLocator;
}
Expand Down

0 comments on commit 4b53b12

Please sign in to comment.