From 03904f18d6b7e368bfd3f83a9380583f4ef66649 Mon Sep 17 00:00:00 2001 From: Viliam Repan Date: Tue, 10 Mar 2020 17:08:40 +0100 Subject: [PATCH] inline menu now can be selected --- .../component/common/InlineMenu.java | 39 +++++++++++++++---- 1 file changed, 32 insertions(+), 7 deletions(-) diff --git a/tools/schrodinger/src/main/java/com/evolveum/midpoint/schrodinger/component/common/InlineMenu.java b/tools/schrodinger/src/main/java/com/evolveum/midpoint/schrodinger/component/common/InlineMenu.java index c6a93edd13f..0259c05deaf 100644 --- a/tools/schrodinger/src/main/java/com/evolveum/midpoint/schrodinger/component/common/InlineMenu.java +++ b/tools/schrodinger/src/main/java/com/evolveum/midpoint/schrodinger/component/common/InlineMenu.java @@ -45,24 +45,49 @@ public InlineMenu caret() { public List getItems() { List items = new ArrayList<>(); - ElementsCollection lis = getParentElement().findAll("div.btn-group ul.dropdown-menu li"); - for (SelenideElement li : lis) { -// li.find() + ElementsCollection lis = getParentElement().findAll("div.btn-group ul.dropdown-menu li a"); + for (SelenideElement a : lis) { + if (!a.isDisplayed()) { + continue; + } + + String txt = a.getText(); + if (txt != null) { + items.add(txt.trim()); + } } - // todo implement return items; } public List getItemKeys() { - // todo implement - return null; + List items = new ArrayList<>(); + + ElementsCollection lis = getParentElement().findAll("div.btn-group ul.dropdown-menu li a schrodinger[data-s-resource-key]"); + for (SelenideElement schrodinger : lis) { + if (!schrodinger.parent().isDisplayed()) { + continue; + } + + String key = schrodinger.getAttribute("data-s-resource-key"); + if (key != null) { + items.add(key.trim()); + } + } + + return items; } - public InlineMenu clickItem(String itemName) { + public InlineMenu clickItemByName(String itemName) { // todo implement SelenideElement dropdown = getParentElement().find("div.btn-group ul.dropdown-menu li"); return this; } + + public InlineMenu clickItemByKey(String itemKey) { + // todo implement + + return this; + } }