diff --git a/pom.xml b/pom.xml
index 2b78176..51f5a94 100644
--- a/pom.xml
+++ b/pom.xml
@@ -46,7 +46,7 @@
org.seleniumhq.selenium
selenium-java
- 4.51.0
+ 4.52.0
diff --git a/src/main/java/com/seleniumboot/browser/DeviceEmulator.java b/src/main/java/com/seleniumboot/browser/DeviceEmulator.java
index 2acb715..63221ea 100644
--- a/src/main/java/com/seleniumboot/browser/DeviceEmulator.java
+++ b/src/main/java/com/seleniumboot/browser/DeviceEmulator.java
@@ -7,8 +7,8 @@
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chromium.ChromiumDriver;
import org.openqa.selenium.devtools.DevTools;
-import org.openqa.selenium.devtools.v153.emulation.Emulation;
-import org.openqa.selenium.devtools.v153.emulation.model.DevicePosture;
+import org.openqa.selenium.devtools.v154.emulation.Emulation;
+import org.openqa.selenium.devtools.v154.emulation.model.DevicePosture;
import java.util.Optional;
import java.util.logging.Logger;
diff --git a/src/main/java/com/seleniumboot/network/NetworkMock.java b/src/main/java/com/seleniumboot/network/NetworkMock.java
index fb83ffb..72b9c49 100644
--- a/src/main/java/com/seleniumboot/network/NetworkMock.java
+++ b/src/main/java/com/seleniumboot/network/NetworkMock.java
@@ -14,12 +14,12 @@
import org.openqa.selenium.bidi.network.ProvideResponseParameters;
import org.openqa.selenium.chromium.ChromiumDriver;
import org.openqa.selenium.devtools.DevTools;
-import org.openqa.selenium.devtools.v153.fetch.Fetch;
-import org.openqa.selenium.devtools.v153.fetch.model.HeaderEntry;
-import org.openqa.selenium.devtools.v153.fetch.model.RequestId;
-import org.openqa.selenium.devtools.v153.fetch.model.RequestPattern;
-import org.openqa.selenium.devtools.v153.fetch.model.RequestPaused;
-import org.openqa.selenium.devtools.v153.fetch.model.RequestStage;
+import org.openqa.selenium.devtools.v154.fetch.Fetch;
+import org.openqa.selenium.devtools.v154.fetch.model.HeaderEntry;
+import org.openqa.selenium.devtools.v154.fetch.model.RequestId;
+import org.openqa.selenium.devtools.v154.fetch.model.RequestPattern;
+import org.openqa.selenium.devtools.v154.fetch.model.RequestPaused;
+import org.openqa.selenium.devtools.v154.fetch.model.RequestStage;
import java.nio.charset.StandardCharsets;
import java.util.Base64;
diff --git a/src/main/java/com/seleniumboot/tracing/NetworkFailureRecorder.java b/src/main/java/com/seleniumboot/tracing/NetworkFailureRecorder.java
index 8b19e69..87bde19 100644
--- a/src/main/java/com/seleniumboot/tracing/NetworkFailureRecorder.java
+++ b/src/main/java/com/seleniumboot/tracing/NetworkFailureRecorder.java
@@ -8,9 +8,9 @@
import org.openqa.selenium.bidi.module.Network;
import org.openqa.selenium.chromium.ChromiumDriver;
import org.openqa.selenium.devtools.DevTools;
-import org.openqa.selenium.devtools.v153.network.model.LoadingFailed;
-import org.openqa.selenium.devtools.v153.network.model.RequestWillBeSent;
-import org.openqa.selenium.devtools.v153.network.model.ResponseReceived;
+import org.openqa.selenium.devtools.v154.network.model.LoadingFailed;
+import org.openqa.selenium.devtools.v154.network.model.RequestWillBeSent;
+import org.openqa.selenium.devtools.v154.network.model.ResponseReceived;
import java.util.Map;
import java.util.Optional;
@@ -78,13 +78,13 @@ public static void stop(String testId) {
private static AutoCloseable listenCdp(String testId, ChromiumDriver chromium) {
DevTools devTools = chromium.getDevTools();
devTools.createSession();
- devTools.send(org.openqa.selenium.devtools.v153.network.Network.enable(
+ devTools.send(org.openqa.selenium.devtools.v154.network.Network.enable(
Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()));
Map seen = new ConcurrentHashMap<>(); // requestId (as text; RequestId has no value equality) -> {method, url}
- devTools.addListener(org.openqa.selenium.devtools.v153.network.Network.requestWillBeSent(),
+ devTools.addListener(org.openqa.selenium.devtools.v154.network.Network.requestWillBeSent(),
(RequestWillBeSent e) -> seen.put(e.getRequestId().toString(),
new String[]{e.getRequest().getMethod(), e.getRequest().getUrl()}));
- devTools.addListener(org.openqa.selenium.devtools.v153.network.Network.responseReceived(),
+ devTools.addListener(org.openqa.selenium.devtools.v154.network.Network.responseReceived(),
(ResponseReceived e) -> {
int status = e.getResponse().getStatus().intValue();
if (status < 400) return;
@@ -92,7 +92,7 @@ private static AutoCloseable listenCdp(String testId, ChromiumDriver chromium) {
ExecutionMetrics.recordNetworkFailure(testId, req != null ? req[0] : "GET",
e.getResponse().getUrl(), status, null);
});
- devTools.addListener(org.openqa.selenium.devtools.v153.network.Network.loadingFailed(),
+ devTools.addListener(org.openqa.selenium.devtools.v154.network.Network.loadingFailed(),
(LoadingFailed e) -> {
if (Boolean.TRUE.equals(e.getCanceled().orElse(false))) return; // aborted by navigation, not a failure
String[] req = seen.get(e.getRequestId().toString());
diff --git a/src/main/java/com/seleniumboot/wait/NetworkActivityTracker.java b/src/main/java/com/seleniumboot/wait/NetworkActivityTracker.java
index 39659f0..b111507 100644
--- a/src/main/java/com/seleniumboot/wait/NetworkActivityTracker.java
+++ b/src/main/java/com/seleniumboot/wait/NetworkActivityTracker.java
@@ -7,10 +7,10 @@
import org.openqa.selenium.bidi.module.Network;
import org.openqa.selenium.chromium.ChromiumDriver;
import org.openqa.selenium.devtools.DevTools;
-import org.openqa.selenium.devtools.v153.network.model.LoadingFailed;
-import org.openqa.selenium.devtools.v153.network.model.LoadingFinished;
-import org.openqa.selenium.devtools.v153.network.model.RequestWillBeSent;
-import org.openqa.selenium.devtools.v153.network.model.ResponseReceived;
+import org.openqa.selenium.devtools.v154.network.model.LoadingFailed;
+import org.openqa.selenium.devtools.v154.network.model.LoadingFinished;
+import org.openqa.selenium.devtools.v154.network.model.RequestWillBeSent;
+import org.openqa.selenium.devtools.v154.network.model.ResponseReceived;
import java.time.Duration;
import java.time.Instant;
@@ -38,13 +38,13 @@ static void awaitIdle(WebDriver driver, Duration quietFor, Duration timeout) {
if (driver instanceof ChromiumDriver chromium) {
try (DevTools devTools = chromium.getDevTools()) {
devTools.createSession();
- devTools.send(org.openqa.selenium.devtools.v153.network.Network.enable(
+ devTools.send(org.openqa.selenium.devtools.v154.network.Network.enable(
Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()));
- devTools.addListener(org.openqa.selenium.devtools.v153.network.Network.requestWillBeSent(),
+ devTools.addListener(org.openqa.selenium.devtools.v154.network.Network.requestWillBeSent(),
(RequestWillBeSent event) -> state.requestStarted());
- devTools.addListener(org.openqa.selenium.devtools.v153.network.Network.loadingFinished(),
+ devTools.addListener(org.openqa.selenium.devtools.v154.network.Network.loadingFinished(),
(LoadingFinished event) -> state.requestEnded());
- devTools.addListener(org.openqa.selenium.devtools.v153.network.Network.loadingFailed(),
+ devTools.addListener(org.openqa.selenium.devtools.v154.network.Network.loadingFailed(),
(LoadingFailed event) -> state.requestEnded());
pollUntilIdle(state, quietFor, timeout);
}
@@ -65,9 +65,9 @@ static int awaitResponse(WebDriver driver, String urlPattern, Duration timeout)
if (driver instanceof ChromiumDriver chromium) {
try (DevTools devTools = chromium.getDevTools()) {
devTools.createSession();
- devTools.send(org.openqa.selenium.devtools.v153.network.Network.enable(
+ devTools.send(org.openqa.selenium.devtools.v154.network.Network.enable(
Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()));
- devTools.addListener(org.openqa.selenium.devtools.v153.network.Network.responseReceived(),
+ devTools.addListener(org.openqa.selenium.devtools.v154.network.Network.responseReceived(),
(ResponseReceived event) -> {
String url = event.getResponse().getUrl();
if (NetworkMock.matches(urlPattern, url)) {
diff --git a/src/test/java/com/seleniumboot/unit/NetworkMockTest.java b/src/test/java/com/seleniumboot/unit/NetworkMockTest.java
index d8eb40a..67536f8 100644
--- a/src/test/java/com/seleniumboot/unit/NetworkMockTest.java
+++ b/src/test/java/com/seleniumboot/unit/NetworkMockTest.java
@@ -18,10 +18,10 @@
import org.openqa.selenium.chromium.ChromiumDriver;
import org.openqa.selenium.devtools.DevTools;
import org.openqa.selenium.devtools.Command;
-import org.openqa.selenium.devtools.v153.fetch.Fetch;
-import org.openqa.selenium.devtools.v153.fetch.model.HeaderEntry;
-import org.openqa.selenium.devtools.v153.fetch.model.RequestId;
-import org.openqa.selenium.devtools.v153.fetch.model.RequestPaused;
+import org.openqa.selenium.devtools.v154.fetch.Fetch;
+import org.openqa.selenium.devtools.v154.fetch.model.HeaderEntry;
+import org.openqa.selenium.devtools.v154.fetch.model.RequestId;
+import org.openqa.selenium.devtools.v154.fetch.model.RequestPaused;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
@@ -373,8 +373,8 @@ public void fallback_whenBiDiFailsOnChromium_fallsBackToCdp() {
Consumer cdpListener = cdpCaptor.getValue();
RequestPaused event = mock(RequestPaused.class);
- org.openqa.selenium.devtools.v153.network.model.Request cdpReq =
- mock(org.openqa.selenium.devtools.v153.network.model.Request.class);
+ org.openqa.selenium.devtools.v154.network.model.Request cdpReq =
+ mock(org.openqa.selenium.devtools.v154.network.model.Request.class);
when(event.getRequest()).thenReturn(cdpReq);
when(cdpReq.getUrl()).thenReturn("https://api.example.com/api/checkout");
when(event.getRequestId()).thenReturn(new RequestId("cdp-1"));