Skip to content

Commit 1d6aa86

Browse files
authored
Merge pull request robotframework#1926 from emanlove/fix-find-by-data-locator-#1924
Fix find by data locator robotframework#1924
2 parents 96fa446 + 09bbd7f commit 1d6aa86

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

utest/test/locators/test_elementfinder.py

+13
Original file line numberDiff line numberDiff line change
@@ -283,6 +283,13 @@ def test_find_with_data(finder):
283283
finder.find("data:id:my_id", tag="div", required=False)
284284
verify(driver).find_elements(By.XPATH, '//*[@data-id="my_id"]')
285285

286+
def test_find_with_data_multiple_colons(finder):
287+
driver = _get_driver(finder)
288+
elements = _make_mock_elements("div", "a", "span", "a")
289+
when(driver).find_elements(By.XPATH, '//*[@data-automation-id="foo:bar"]').thenReturn(elements)
290+
result = finder.find("data:automation-id:foo:bar", first_only=False)
291+
assert result == elements
292+
286293

287294
def test_find_with_invalid_data(finder):
288295
with pytest.raises(
@@ -297,6 +304,12 @@ def test_find_with_invalid_data(finder):
297304
):
298305
finder.find("data:", tag="div", required=False)
299306

307+
with pytest.raises(
308+
ValueError,
309+
match=r"^Provided selector \(:value\) is malformed\. Correct format: name:value\.",
310+
):
311+
finder.find("data::value", tag="div", required=False)
312+
300313

301314
def test_find_with_locator_with_apos(finder):
302315
driver = _get_driver(finder)

0 commit comments

Comments
 (0)