From d5b0a087807f54ff7fc1ed8e19403cd3c3a7ac69 Mon Sep 17 00:00:00 2001 From: "Alex \"Blex\" B" <45384811+AB-xdev@users.noreply.github.com> Date: Fri, 18 Jul 2025 14:07:35 +0200 Subject: [PATCH 1/5] Update CHANGELOG.md --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index dea1571..af0c9e5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,5 @@ # 1.0.4 -* ``ImprovedWebElement#hasAttribute`` now waits for loading operations to complete (now calls ``prepareForOperation`` as ``getProperty`` already does) +* ``ImprovedWebElement#hasAttribute`` now waits for loading operations to complete (now calls ``prepareForOperation`` - like ``getProperty`` already does) # 1.0.3 * Removed reflection calls in ``CustomizableJsonToWebElementConverter`` as https://github.com/SeleniumHQ/selenium/issues/15884 was fixed #11 From 4fe13646bd51b99305a1b14070daa1a580e180a4 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Tue, 22 Jul 2025 04:24:54 +0000 Subject: [PATCH 2/5] Update dependency org.junit.jupiter:junit-jupiter to v5.13.4 --- selenium-elements/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selenium-elements/pom.xml b/selenium-elements/pom.xml index 3e1a9c4..1a4a7ab 100644 --- a/selenium-elements/pom.xml +++ b/selenium-elements/pom.xml @@ -82,7 +82,7 @@ org.junit.jupiter junit-jupiter - 5.13.3 + 5.13.4 test From 1885f22338c088ac37f6fa40d79437c2618cd0f1 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Sat, 26 Jul 2025 04:23:21 +0000 Subject: [PATCH 3/5] Update net.sourceforge.pmd to v7.16.0 --- pom.xml | 4 ++-- template-placeholder/pom.xml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index b148a3f..13cbcef 100644 --- a/pom.xml +++ b/pom.xml @@ -82,12 +82,12 @@ net.sourceforge.pmd pmd-core - 7.15.0 + 7.16.0 net.sourceforge.pmd pmd-java - 7.15.0 + 7.16.0 diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index b0e33c7..789e455 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -252,12 +252,12 @@ net.sourceforge.pmd pmd-core - 7.15.0 + 7.16.0 net.sourceforge.pmd pmd-java - 7.15.0 + 7.16.0 From f288c365ca866a08907cb7963fea3f82c7bffb01 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Tue, 29 Jul 2025 04:30:18 +0000 Subject: [PATCH 4/5] Update dependency org.codehaus.mojo:flatten-maven-plugin to v1.7.2 --- template-placeholder/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index 789e455..58df6c8 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -147,7 +147,7 @@ org.codehaus.mojo flatten-maven-plugin - 1.7.1 + 1.7.2 ossrh From 722c4eeebc664cddf7ea3a21d7c472778f39778f Mon Sep 17 00:00:00 2001 From: AB Date: Wed, 30 Jul 2025 09:36:55 +0200 Subject: [PATCH 5/5] Add new shortcut method ``CanFindElements#waitForFirstByClassName`` --- CHANGELOG.md | 4 ++++ .../software/xdev/selenium/elements/CanFindElements.java | 5 +++++ 2 files changed, 9 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index af0c9e5..8347710 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +# 1.0.5 +* Add new shortcut method ``CanFindElements#waitForFirstByClassName`` +* Updated dependencies + # 1.0.4 * ``ImprovedWebElement#hasAttribute`` now waits for loading operations to complete (now calls ``prepareForOperation`` - like ``getProperty`` already does) diff --git a/selenium-elements/src/main/java/software/xdev/selenium/elements/CanFindElements.java b/selenium-elements/src/main/java/software/xdev/selenium/elements/CanFindElements.java index 187dbff..158ba77 100644 --- a/selenium-elements/src/main/java/software/xdev/selenium/elements/CanFindElements.java +++ b/selenium-elements/src/main/java/software/xdev/selenium/elements/CanFindElements.java @@ -65,6 +65,11 @@ default WebElement waitForFirst(final By by) return this.waitUntil(wd -> this.determineSearchContext(wd).findElement(by)); } + default WebElement waitForFirstByClassName(final String className) + { + return this.waitForFirst(By.cssSelector("." + className)); + } + default T waitForFirst(final Class clazz) { return this.waitForFirst(clazz, null);