From b52af06863ada1b0a7a0659ea41b8830632c3151 Mon Sep 17 00:00:00 2001 From: delta456 Date: Wed, 11 Dec 2024 23:19:36 +0530 Subject: [PATCH 1/6] Revert "add alias attr to all edge structs" This reverts commit f17dd08dd32998a310510f0abc44e5b484202a4d. --- rust/src/edge.rs | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/rust/src/edge.rs b/rust/src/edge.rs index 8b844dd718630..582a7f1717b38 100644 --- a/rust/src/edge.rs +++ b/rust/src/edge.rs @@ -555,42 +555,42 @@ impl SeleniumManager for EdgeManager { #[derive(Serialize, Deserialize, Debug)] pub struct EdgeProduct { - #[serde(rename = "Product", alias = "product")] + #[serde(rename = "Product")] pub product: String, - #[serde(rename = "Releases", alias = "releases")] + #[serde(rename = "Releases")] pub releases: Vec, } #[derive(Serialize, Deserialize, Debug)] pub struct Release { - #[serde(rename = "ReleaseId", alias = "releaseId")] + #[serde(rename = "ReleaseId")] pub release_id: u32, - #[serde(rename = "Platform", alias = "platform")] + #[serde(rename = "Platform")] pub platform: String, - #[serde(rename = "Architecture", alias = "architecture")] + #[serde(rename = "Architecture")] pub architecture: String, - #[serde(rename = "CVEs", alias = "cves")] + #[serde(rename = "CVEs")] pub cves: Vec, - #[serde(rename = "ProductVersion", alias = "productVersion")] + #[serde(rename = "ProductVersion")] pub product_version: String, - #[serde(rename = "Artifacts", alias = "artifacts")] + #[serde(rename = "Artifacts")] pub artifacts: Vec, - #[serde(rename = "PublishedTime", alias = "publishedTime")] + #[serde(rename = "PublishedTime")] pub published_time: String, - #[serde(rename = "ExpectedExpiryDate", alias = "expectedExpiryDate")] + #[serde(rename = "ExpectedExpiryDate")] pub expected_expiry_date: String, } #[derive(Serialize, Deserialize, Debug)] pub struct Artifact { - #[serde(rename = "ArtifactName", alias = "artifactName")] + #[serde(rename = "ArtifactName")] pub artifact_name: String, - #[serde(rename = "Location", alias = "location")] + #[serde(rename = "Location")] pub location: String, - #[serde(rename = "Hash", alias = "hash")] + #[serde(rename = "Hash")] pub hash: String, - #[serde(rename = "HashAlgorithm", alias = "hashAlgorithm")] + #[serde(rename = "HashAlgorithm")] pub hash_algorithm: String, - #[serde(rename = "SizeInBytes", alias = "sizeInBytes")] + #[serde(rename = "SizeInBytes")] pub size_in_bytes: u32, } From 54ead9d308e1fd4c13e20ae23e120cfa68fa6e10 Mon Sep 17 00:00:00 2001 From: delta456 Date: Tue, 31 Dec 2024 17:40:08 +0530 Subject: [PATCH 2/6] Reapply "add alias attr to all edge structs" This reverts commit cc16e3fe18971d5ecb37e26a37bcda76cda7c48b. oops --- rust/src/edge.rs | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/rust/src/edge.rs b/rust/src/edge.rs index 582a7f1717b38..8b844dd718630 100644 --- a/rust/src/edge.rs +++ b/rust/src/edge.rs @@ -555,42 +555,42 @@ impl SeleniumManager for EdgeManager { #[derive(Serialize, Deserialize, Debug)] pub struct EdgeProduct { - #[serde(rename = "Product")] + #[serde(rename = "Product", alias = "product")] pub product: String, - #[serde(rename = "Releases")] + #[serde(rename = "Releases", alias = "releases")] pub releases: Vec, } #[derive(Serialize, Deserialize, Debug)] pub struct Release { - #[serde(rename = "ReleaseId")] + #[serde(rename = "ReleaseId", alias = "releaseId")] pub release_id: u32, - #[serde(rename = "Platform")] + #[serde(rename = "Platform", alias = "platform")] pub platform: String, - #[serde(rename = "Architecture")] + #[serde(rename = "Architecture", alias = "architecture")] pub architecture: String, - #[serde(rename = "CVEs")] + #[serde(rename = "CVEs", alias = "cves")] pub cves: Vec, - #[serde(rename = "ProductVersion")] + #[serde(rename = "ProductVersion", alias = "productVersion")] pub product_version: String, - #[serde(rename = "Artifacts")] + #[serde(rename = "Artifacts", alias = "artifacts")] pub artifacts: Vec, - #[serde(rename = "PublishedTime")] + #[serde(rename = "PublishedTime", alias = "publishedTime")] pub published_time: String, - #[serde(rename = "ExpectedExpiryDate")] + #[serde(rename = "ExpectedExpiryDate", alias = "expectedExpiryDate")] pub expected_expiry_date: String, } #[derive(Serialize, Deserialize, Debug)] pub struct Artifact { - #[serde(rename = "ArtifactName")] + #[serde(rename = "ArtifactName", alias = "artifactName")] pub artifact_name: String, - #[serde(rename = "Location")] + #[serde(rename = "Location", alias = "location")] pub location: String, - #[serde(rename = "Hash")] + #[serde(rename = "Hash", alias = "hash")] pub hash: String, - #[serde(rename = "HashAlgorithm")] + #[serde(rename = "HashAlgorithm", alias = "hashAlgorithm")] pub hash_algorithm: String, - #[serde(rename = "SizeInBytes")] + #[serde(rename = "SizeInBytes", alias = "sizeInBytes")] pub size_in_bytes: u32, } From 3516821930f31ed9c65c0ce79b0a008e71388491 Mon Sep 17 00:00:00 2001 From: delta456 Date: Wed, 15 Jan 2025 16:04:44 +0530 Subject: [PATCH 3/6] [java] handle `getNamedCookie` and `deleteNamedCookie` for empty strings --- .../org/openqa/selenium/remote/RemoteWebDriver.java | 6 ++++++ .../openqa/selenium/CookieImplementationTest.java | 13 +++++++++++++ 2 files changed, 19 insertions(+) diff --git a/java/src/org/openqa/selenium/remote/RemoteWebDriver.java b/java/src/org/openqa/selenium/remote/RemoteWebDriver.java index e0443aea24d89..1035793469288 100644 --- a/java/src/org/openqa/selenium/remote/RemoteWebDriver.java +++ b/java/src/org/openqa/selenium/remote/RemoteWebDriver.java @@ -869,6 +869,9 @@ public void addCookie(Cookie cookie) { @Override public void deleteCookieNamed(String name) { + if (name.isEmpty() || name.equals(" ")) { + throw new IllegalArgumentException("Cookie name cannot be empty or null"); + } execute(DriverCommand.DELETE_COOKIE(name)); } @@ -927,6 +930,9 @@ public Set getCookies() { @Override public Cookie getCookieNamed(String name) { + if (name.isEmpty() || name.equals(" ")) { + throw new IllegalArgumentException("Cookie name cannot be empty or null"); + } Set allCookies = getCookies(); for (Cookie cookie : allCookies) { if (cookie.getName().equals(name)) { diff --git a/java/test/org/openqa/selenium/CookieImplementationTest.java b/java/test/org/openqa/selenium/CookieImplementationTest.java index 5da0b5f408991..148247a79113e 100644 --- a/java/test/org/openqa/selenium/CookieImplementationTest.java +++ b/java/test/org/openqa/selenium/CookieImplementationTest.java @@ -18,6 +18,7 @@ package org.openqa.selenium; import static org.assertj.core.api.Assertions.assertThat; +import static org.junit.jupiter.api.Assertions.assertThrows; import static org.junit.jupiter.api.Assumptions.assumeTrue; import static org.openqa.selenium.testing.drivers.Browser.ALL; import static org.openqa.selenium.testing.drivers.Browser.CHROME; @@ -503,6 +504,18 @@ public void testDeleteNotExistedCookie() { driver.manage().deleteCookieNamed(key); } + @Test + public void testDeleteEmptyNamedCookie() { + assertThrows(IllegalArgumentException.class, () -> driver.manage().deleteCookieNamed("")); + assertThrows(IllegalArgumentException.class, () -> driver.manage().deleteCookieNamed(" ")); + } + + @Test + public void testGetEmptyNamedCookie() { + assertThrows(IllegalArgumentException.class, () -> driver.manage().getCookieNamed("")); + assertThrows(IllegalArgumentException.class, () -> driver.manage().getCookieNamed(" ")); + } + @Test @Ignore(value = ALL, reason = "Non W3C conformant") public void testShouldDeleteOneOfTheCookiesWithTheSameName() { From c457bd85138fe4c7527897bb22f28e3d36354dd6 Mon Sep 17 00:00:00 2001 From: delta456 Date: Wed, 15 Jan 2025 16:16:01 +0530 Subject: [PATCH 4/6] format --- java/src/org/openqa/selenium/remote/RemoteWebDriver.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/java/src/org/openqa/selenium/remote/RemoteWebDriver.java b/java/src/org/openqa/selenium/remote/RemoteWebDriver.java index 1035793469288..47400ea837bb0 100644 --- a/java/src/org/openqa/selenium/remote/RemoteWebDriver.java +++ b/java/src/org/openqa/selenium/remote/RemoteWebDriver.java @@ -22,6 +22,7 @@ import static java.util.logging.Level.SEVERE; import static org.openqa.selenium.remote.CapabilityType.PLATFORM_NAME; +import com.github.javaparser.quality.NotNull; import java.io.IOException; import java.net.MalformedURLException; import java.net.URL; @@ -868,9 +869,9 @@ public void addCookie(Cookie cookie) { } @Override - public void deleteCookieNamed(String name) { + public void deleteCookieNamed(@NotNull String name) { if (name.isEmpty() || name.equals(" ")) { - throw new IllegalArgumentException("Cookie name cannot be empty or null"); + throw new IllegalArgumentException("Cookie name cannot be empty"); } execute(DriverCommand.DELETE_COOKIE(name)); } @@ -929,9 +930,9 @@ public Set getCookies() { } @Override - public Cookie getCookieNamed(String name) { + public Cookie getCookieNamed(@NotNull String name) { if (name.isEmpty() || name.equals(" ")) { - throw new IllegalArgumentException("Cookie name cannot be empty or null"); + throw new IllegalArgumentException("Cookie name cannot be empty"); } Set allCookies = getCookies(); for (Cookie cookie : allCookies) { From 3deb0584138d3bfb25194fa7175f05ac6d159d44 Mon Sep 17 00:00:00 2001 From: delta456 Date: Wed, 15 Jan 2025 16:23:31 +0530 Subject: [PATCH 5/6] use isblank --- java/src/org/openqa/selenium/remote/RemoteWebDriver.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/java/src/org/openqa/selenium/remote/RemoteWebDriver.java b/java/src/org/openqa/selenium/remote/RemoteWebDriver.java index 47400ea837bb0..bd048a4379ee7 100644 --- a/java/src/org/openqa/selenium/remote/RemoteWebDriver.java +++ b/java/src/org/openqa/selenium/remote/RemoteWebDriver.java @@ -870,7 +870,7 @@ public void addCookie(Cookie cookie) { @Override public void deleteCookieNamed(@NotNull String name) { - if (name.isEmpty() || name.equals(" ")) { + if (name.isBlank()) { throw new IllegalArgumentException("Cookie name cannot be empty"); } execute(DriverCommand.DELETE_COOKIE(name)); @@ -931,7 +931,7 @@ public Set getCookies() { @Override public Cookie getCookieNamed(@NotNull String name) { - if (name.isEmpty() || name.equals(" ")) { + if (name.isBlank()) { throw new IllegalArgumentException("Cookie name cannot be empty"); } Set allCookies = getCookies(); From 53077b15a65ac692be870082e88c21efabd3c851 Mon Sep 17 00:00:00 2001 From: delta456 Date: Tue, 21 Jan 2025 16:32:18 +0530 Subject: [PATCH 6/6] fix CI --- java/src/org/openqa/selenium/remote/RemoteWebDriver.java | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/java/src/org/openqa/selenium/remote/RemoteWebDriver.java b/java/src/org/openqa/selenium/remote/RemoteWebDriver.java index bd048a4379ee7..75fef0af13f6d 100644 --- a/java/src/org/openqa/selenium/remote/RemoteWebDriver.java +++ b/java/src/org/openqa/selenium/remote/RemoteWebDriver.java @@ -22,7 +22,6 @@ import static java.util.logging.Level.SEVERE; import static org.openqa.selenium.remote.CapabilityType.PLATFORM_NAME; -import com.github.javaparser.quality.NotNull; import java.io.IOException; import java.net.MalformedURLException; import java.net.URL; @@ -869,8 +868,8 @@ public void addCookie(Cookie cookie) { } @Override - public void deleteCookieNamed(@NotNull String name) { - if (name.isBlank()) { + public void deleteCookieNamed(String name) { + if (name == null || name.isBlank()) { throw new IllegalArgumentException("Cookie name cannot be empty"); } execute(DriverCommand.DELETE_COOKIE(name)); @@ -930,8 +929,8 @@ public Set getCookies() { } @Override - public Cookie getCookieNamed(@NotNull String name) { - if (name.isBlank()) { + public Cookie getCookieNamed(String name) { + if (name == null || name.isBlank()) { throw new IllegalArgumentException("Cookie name cannot be empty"); } Set allCookies = getCookies();