Skip to content

Conversation

@titusfortner
Copy link
Member

@titusfortner titusfortner commented Oct 21, 2025

User description

  • Adds -bidi-remote option for each test target
  • Limits tests in bidi directory to just bidi supported browsers
  • Document these things in the README

I did not figure out how to prevent the bidi specific targets in the main webdriver directory from being added to non-supported browsers, but Ruby blocks that from running right now, so it is more housekeeping than performance speedup.
As in, these targets don't matter but will still be generated:

//rb/spec/integration/selenium/webdriver:network-ie
//rb/spec/integration/selenium/webdriver:network-ie-remote
//rb/spec/integration/selenium/webdriver:network-safari
//rb/spec/integration/selenium/webdriver:network-safari-preview

PR Type

Enhancement, Tests


Description

  • Adds remote-bidi test targets for BiDi-supported browsers

  • Restricts bidi tests to explicitly supported browsers via BIDI_BROWSERS

  • Expands bidi test coverage with remote execution capability

  • Updates documentation with bidi testing guidance and examples


Diagram Walkthrough

flowchart LR
  A["BIDI_BROWSERS<br/>defined"] -->|filters| B["bidi test<br/>generation"]
  B -->|creates| C["local-bidi<br/>targets"]
  B -->|creates| D["remote-bidi<br/>targets"]
  E["rb_integration_test<br/>function"] -->|checks| A
  E -->|generates| C
  E -->|generates| D
Loading

File Walkthrough

Relevant files
Enhancement
tests.bzl
Add bidi browser filtering and remote-bidi test targets   

rb/spec/tests.bzl

  • Defines BIDI_BROWSERS constant listing supported browsers for bidi
    testing
  • Adds condition to restrict bidi test generation to browsers in
    BIDI_BROWSERS
  • Generates new remote-bidi test targets alongside existing bidi targets
  • Configures remote-bidi targets with proper environment variables and
    dependencies
+35/-1   
BUILD.bazel
Restrict bidi tests to supported browsers                               

rb/spec/integration/selenium/webdriver/bidi/BUILD.bazel

  • Imports BIDI_BROWSERS constant from tests.bzl
  • Restricts bidi integration tests to only supported browsers via
    browsers parameter
+2/-1     
Documentation
README.md
Document bidi testing and remote-bidi test targets             

README.md

  • Adds documentation for running bidi-specific tests with
    --test_tag_filters bidi
  • Explains dynamic test target generation and BiDi protocol importance
  • Updates test target examples to include bidi and remote-bidi variants
  • Documents WEBDRIVER_BIDI environment variable for enabling web socket
    URLs
  • Adds chrome-beta to supported browsers list
+18/-11 

@titusfortner titusfortner requested a review from p0deje October 21, 2025 20:07
@selenium-ci selenium-ci added C-rb Ruby Bindings B-build Includes scripting, bazel and CI integrations B-devtools Includes everything BiDi or Chrome DevTools related labels Oct 21, 2025
@qodo-merge-pro
Copy link
Contributor

PR Compliance Guide 🔍

Below is a summary of compliance checks for this PR:

Security Compliance
🟢
No security concerns identified No security vulnerabilities detected by AI analysis. Human verification advised for critical code.
Ticket Compliance
🎫 No ticket provided
- [ ] Create ticket/issue <!-- /create_ticket --create_ticket=true -->

</details></td></tr>
Codebase Duplication Compliance
Codebase context is not defined

Follow the guide to enable codebase context checks.

Custom Compliance
No custom compliance provided

Follow the guide to enable custom compliance check.

Compliance status legend 🟢 - Fully Compliant
🟡 - Partial Compliant
🔴 - Not Compliant
⚪ - Requires Further Human Verification
🏷️ - Compliance label

@qodo-merge-pro
Copy link
Contributor

PR Code Suggestions ✨

Explore these optional code suggestions:

CategorySuggestion                                                                                                                                    Impact
Possible issue
Add missing remote browser environment variable

Add the missing WD_REMOTE_BROWSER environment variable to the remote-bidi test
target to specify the browser for remote execution.

rb/spec/tests.bzl [244-269]

 +            rb_test(
 +                name = "{}-{}-remote-bidi".format(name, browser),
 +                size = "large",
 +                srcs = srcs,
 +                args = ["rb/spec/"],
 +                data = BROWSERS[browser]["data"] + data + [
 +                    "//common/src/web",
 +                    "//java/src/org/openqa/selenium/grid:selenium_server_deploy.jar",
 +                    "//rb/spec:java-location",
 +                    "@bazel_tools//tools/jdk:current_java_runtime",
 +                ],
 +                env = BROWSERS[browser]["env"] | {
 +                    "WD_BAZEL_JAVA_LOCATION": "$(rootpath //rb/spec:java-location)",
 +                    "WD_SPEC_DRIVER": "remote",
++                    "WD_REMOTE_BROWSER": browser,
 +                    "WEBDRIVER_BIDI": "true",
 +                },
 +                main = "@bundle//bin:rspec",
 +                tags = COMMON_TAGS + BROWSERS[browser]["tags"] + tags + ["{}-remote-bidi".format(browser)],
 +                deps = depset(
 +                    ["//rb/spec/integration/selenium/webdriver:spec_helper", "//rb/lib/selenium/webdriver:bidi"] +
 +                    BROWSERS[browser]["deps"] +
 +                    deps,
 +                ),
 +                visibility = ["//rb:__subpackages__"],
 +                target_compatible_with = BROWSERS[browser]["target_compatible_with"],
 +            )

[To ensure code accuracy, apply this suggestion manually]

Suggestion importance[1-10]: 9

__

Why: The suggestion correctly identifies that the WD_REMOTE_BROWSER environment variable is missing for the new remote-bidi test target, which would cause these tests to fail.

High
High-level
Refactor build logic to reduce duplication

To reduce code duplication in rb/spec/tests.bzl, refactor the build logic by
creating a helper function. This function would generate remote test targets and
accept parameters for BiDi-specific configurations, consolidating the similar
logic for 'remote' and 'remote-bidi' targets.

Examples:

rb/spec/tests.bzl [226-269]
        if "bidi" in tags and browser in BIDI_BROWSERS:
            rb_test(
                name = "{}-{}-bidi".format(name, browser),
                size = "large",
                srcs = srcs,
                args = ["rb/spec/"],
                data = BROWSERS[browser]["data"] + data + ["//common/src/web"],
                env = BROWSERS[browser]["env"] | {"WEBDRIVER_BIDI": "true"},
                main = "@bundle//bin:rspec",
                tags = COMMON_TAGS + BROWSERS[browser]["tags"] + tags + ["{}-bidi".format(browser)],

 ... (clipped 34 lines)

Solution Walkthrough:

Before:

# in rb/spec/tests.bzl within rb_integration_test

if "bidi" in tags and browser in BIDI_BROWSERS:
    # local bidi test
    rb_test(
        name = "{}-{}-bidi".format(name, browser),
        env = {"WEBDRIVER_BIDI": "true"},
        tags = tags + ["{}-bidi".format(browser)],
        deps = deps + ["//rb/lib/selenium/webdriver:bidi"],
        ...
    )
    # remote bidi test (newly added, very similar to existing remote tests)
    rb_test(
        name = "{}-{}-remote-bidi".format(name, browser),
        data = data + ["//.../selenium_server_deploy.jar", ...],
        env = {"WD_SPEC_DRIVER": "remote", "WEBDRIVER_BIDI": "true", ...},
        tags = tags + ["{}-remote-bidi".format(browser)],
        deps = deps + ["//rb/lib/selenium/webdriver:bidi"],
        ...
    )

After:

# in rb/spec/tests.bzl

def _create_bidi_test(name, browser, srcs, tags, deps, data, is_remote=False):
    remote_suffix = "-remote" if is_remote else ""
    
    env = {"WEBDRIVER_BIDI": "true"}
    if is_remote:
        env["WD_SPEC_DRIVER"] = "remote"
        # ... other remote env vars
        data += ["//.../selenium_server_deploy.jar", ...]

    rb_test(
        name = "{}-{}-bidi{}".format(name, browser, remote_suffix),
        env = env,
        data = data,
        ...
    )

# in rb/spec/tests.bzl within rb_integration_test
if "bidi" in tags and browser in BIDI_BROWSERS:
    _create_bidi_test(..., is_remote=False)
    _create_bidi_test(..., is_remote=True)
Suggestion importance[1-10]: 7

__

Why: The suggestion correctly identifies significant code duplication in the Bazel build file rb/spec/tests.bzl and proposes a valid refactoring that would improve long-term maintainability.

Medium
Learned
best practice
Validate BIDI browser list

Guard against unsupported browsers by asserting that every entry in
BIDI_BROWSERS exists in BROWSERS to prevent misconfiguration and hard-to-debug
build failures.

rb/spec/tests.bzl [12-269]

 BIDI_BROWSERS = [
     "chrome",
     "chrome-beta",
     "edge",
     "firefox",
     "firefox-beta",
 ]
+
+# Validate bidi browser list against known browsers
+for _b in BIDI_BROWSERS:
+    if _b not in BROWSERS:
+        fail("Unknown browser in BIDI_BROWSERS: {}".format(_b))
+
 ...
-    if "bidi" in tags and browser in BIDI_BROWSERS:
-        rb_test(
-            name = "{}-{}-bidi".format(name, browser),
-            ...
-            target_compatible_with = BROWSERS[browser]["target_compatible_with"],
-        )
-        rb_test(
-            name = "{}-{}-remote-bidi".format(name, browser),
-            ...
-            target_compatible_with = BROWSERS[browser]["target_compatible_with"],
-        )
+if "bidi" in tags and browser in BIDI_BROWSERS:
+    rb_test(
+        name = "{}-{}-bidi".format(name, browser),
+        ...
+        target_compatible_with = BROWSERS[browser]["target_compatible_with"],
+    )
+    rb_test(
+        name = "{}-{}-remote-bidi".format(name, browser),
+        ...
+        target_compatible_with = BROWSERS[browser]["target_compatible_with"],
+    )

[To ensure code accuracy, apply this suggestion manually]

Suggestion importance[1-10]: 6

__

Why:
Relevant best practice - Validate inputs and states early to avoid generating invalid configurations or targets.

Low
  • More

@qodo-merge-pro
Copy link
Contributor

CI Feedback 🧐

A test triggered by this PR failed. Here is an AI-generated analysis of the failure:

Action: Test / All RBE tests

Failed stage: Run Bazel [❌]

Failed test name: //rb/spec/integration/selenium/webdriver:network-firefox-remote-bidi

Failure summary:

The action failed because the test target
//rb/spec/integration/selenium/webdriver:network-firefox-remote-bidi consistently failed (2
attempts).
- Primary error: IOError: stream closed in another thread raised from
./rb/lib/selenium/webdriver/common/websocket_connection.rb:48 and :102 during BiDi WebSocket
operations, often while closing or attaching the socket listener.
- This caused multiple RSpec
examples in rb/spec/integration/selenium/webdriver/network_spec.rb to fail (20 failures on the
stable Firefox remote BiDi run), e.g.:
- adds an auth handler (network_spec.rb:30)
- adds an
auth handler with a filter (network_spec.rb:40)
- adds a request handler with attributes
(network_spec.rb:145)
- and others listed between lines 3122–3141 of the log.
- Additional
timeouts seen in related BiDi tests (e.g., TimeoutError on navigate) indicate unstable BiDi
communication, but the hard failure was the repeated IOError in the Firefox remote BiDi network
suite.
- Bazel summary: 2437 tests passed, 1 failed remotely; build completed with 1 test FAILED and
process exited with code 3.

Relevant error logs:
1:  ##[group]Runner Image Provisioner
2:  Hosted Compute Agent
...

925:  Package 'php-sql-formatter' is not installed, so not removed
926:  Package 'php8.3-ssh2' is not installed, so not removed
927:  Package 'php-ssh2-all-dev' is not installed, so not removed
928:  Package 'php8.3-stomp' is not installed, so not removed
929:  Package 'php-stomp-all-dev' is not installed, so not removed
930:  Package 'php-swiftmailer' is not installed, so not removed
931:  Package 'php-symfony' is not installed, so not removed
932:  Package 'php-symfony-asset' is not installed, so not removed
933:  Package 'php-symfony-asset-mapper' is not installed, so not removed
934:  Package 'php-symfony-browser-kit' is not installed, so not removed
935:  Package 'php-symfony-clock' is not installed, so not removed
936:  Package 'php-symfony-debug-bundle' is not installed, so not removed
937:  Package 'php-symfony-doctrine-bridge' is not installed, so not removed
938:  Package 'php-symfony-dom-crawler' is not installed, so not removed
939:  Package 'php-symfony-dotenv' is not installed, so not removed
940:  Package 'php-symfony-error-handler' is not installed, so not removed
941:  Package 'php-symfony-event-dispatcher' is not installed, so not removed
...

1119:  Package 'php-twig-html-extra' is not installed, so not removed
1120:  Package 'php-twig-i18n-extension' is not installed, so not removed
1121:  Package 'php-twig-inky-extra' is not installed, so not removed
1122:  Package 'php-twig-intl-extra' is not installed, so not removed
1123:  Package 'php-twig-markdown-extra' is not installed, so not removed
1124:  Package 'php-twig-string-extra' is not installed, so not removed
1125:  Package 'php8.3-uopz' is not installed, so not removed
1126:  Package 'php-uopz-all-dev' is not installed, so not removed
1127:  Package 'php8.3-uploadprogress' is not installed, so not removed
1128:  Package 'php-uploadprogress-all-dev' is not installed, so not removed
1129:  Package 'php8.3-uuid' is not installed, so not removed
1130:  Package 'php-uuid-all-dev' is not installed, so not removed
1131:  Package 'php-validate' is not installed, so not removed
1132:  Package 'php-vlucas-phpdotenv' is not installed, so not removed
1133:  Package 'php-voku-portable-ascii' is not installed, so not removed
1134:  Package 'php-wmerrors' is not installed, so not removed
1135:  Package 'php-xdebug-all-dev' is not installed, so not removed
...

1761:  (20:14:53) �[32mLoading:�[0m 2 packages loaded
1762:  (20:14:55) �[33mDEBUG: �[0m/home/runner/work/selenium/selenium/deploys/docker/docker.bzl:5:14: Ignoring ports on generated image distributor-image: https://github.com/bazel-contrib/rules_oci/issues/220
1763:  (20:14:55) �[33mDEBUG: �[0m/home/runner/work/selenium/selenium/deploys/docker/docker.bzl:5:14: Ignoring ports on generated image event-bus-image: https://github.com/bazel-contrib/rules_oci/issues/220
1764:  (20:14:55) �[33mDEBUG: �[0m/home/runner/work/selenium/selenium/deploys/docker/docker.bzl:5:14: Ignoring ports on generated image router-image: https://github.com/bazel-contrib/rules_oci/issues/220
1765:  (20:14:55) �[33mDEBUG: �[0m/home/runner/work/selenium/selenium/deploys/docker/docker.bzl:5:14: Ignoring ports on generated image session-map-image: https://github.com/bazel-contrib/rules_oci/issues/220
1766:  (20:14:55) �[33mDEBUG: �[0m/home/runner/work/selenium/selenium/deploys/docker/docker.bzl:5:14: Ignoring ports on generated image session-queue-image: https://github.com/bazel-contrib/rules_oci/issues/220
1767:  (20:14:55) �[33mDEBUG: �[0m/home/runner/work/selenium/selenium/deploys/docker/docker.bzl:5:14: Ignoring ports on generated image chrome-node: https://github.com/bazel-contrib/rules_oci/issues/220
1768:  (20:14:55) �[33mDEBUG: �[0m/home/runner/work/selenium/selenium/deploys/docker/docker.bzl:5:14: Ignoring ports on generated image firefox-node: https://github.com/bazel-contrib/rules_oci/issues/220
1769:  (20:14:58) �[32mLoading:�[0m 243 packages loaded
1770:  currently loading: javascript/atoms ... (11 packages)
1771:  (20:15:02) �[32mAnalyzing:�[0m 2438 targets (254 packages loaded, 0 targets configured)
1772:  (20:15:02) �[32mAnalyzing:�[0m 2438 targets (254 packages loaded, 0 targets configured)
1773:  (20:15:08) �[32mAnalyzing:�[0m 2438 targets (420 packages loaded, 61 targets configured)
1774:  (20:15:10) �[33mDEBUG: �[0m/home/runner/.bazel/external/rules_jvm_external+/private/extensions/maven.bzl:295:14: WARNING: The following maven modules appear in multiple sub-modules with potentially different versions. Consider adding one of these to your root module to ensure consistent versions:
1775:  com.google.code.findbugs:jsr305
1776:  com.google.errorprone:error_prone_annotations
1777:  com.google.guava:guava (versions: 30.1.1-jre, 31.0.1-android)
...

1804:  (20:16:09) �[32mAnalyzing:�[0m 2438 targets (1650 packages loaded, 49706 targets configured)
1805:  �[32m[740 / 841]�[0m 29 / 74 tests;�[0m checking cached actions
1806:  (20:16:14) �[32mAnalyzing:�[0m 2438 targets (1656 packages loaded, 49798 targets configured)
1807:  �[32m[740 / 841]�[0m 29 / 74 tests;�[0m checking cached actions
1808:  (20:16:15) �[32mINFO: �[0mFrom Building external/contrib_rules_jvm+/java/src/com/github/bazel_contrib/contrib_rules_jvm/junit5/libjunit5-compile-class.jar (19 source files):
1809:  warning: [options] source value 8 is obsolete and will be removed in a future release
1810:  warning: [options] target value 8 is obsolete and will be removed in a future release
1811:  warning: [options] To suppress warnings about obsolete options, use -Xlint:-options.
1812:  (20:16:17) �[35mWARNING: �[0m/home/runner/.bazel/external/io_bazel_rules_closure/java/com/google/javascript/jscomp/BUILD:19:13: in java_library rule @@io_bazel_rules_closure//java/com/google/javascript/jscomp:jscomp: target '@@io_bazel_rules_closure//java/com/google/javascript/jscomp:jscomp' depends on deprecated target '@@io_bazel_rules_closure//java/io/bazel/rules/closure:build_info_java_proto': Use java_proto_library from com_google_protobuf
1813:  (20:16:17) �[33mDEBUG: �[0m/home/runner/.bazel/external/io_bazel_rules_closure/closure/compiler/closure_js_deps.bzl:38:10: closure_js_deps() and deps.js files are deprecated. Please remove your closure_js_deps rules and, if needed, use the google-closure-deps npm module with bazelbuild/rules_nodejs to generate deps.js files.
1814:  (20:16:18) �[33mDEBUG: �[0m/home/runner/.bazel/external/io_bazel_rules_closure/closure/compiler/closure_js_deps.bzl:38:10: closure_js_deps() and deps.js files are deprecated. Please remove your closure_js_deps rules and, if needed, use the google-closure-deps npm module with bazelbuild/rules_nodejs to generate deps.js files.
1815:  (20:16:18) �[33mDEBUG: �[0m/home/runner/.bazel/external/io_bazel_rules_closure/closure/compiler/closure_js_deps.bzl:38:10: closure_js_deps() and deps.js files are deprecated. Please remove your closure_js_deps rules and, if needed, use the google-closure-deps npm module with bazelbuild/rules_nodejs to generate deps.js files.
1816:  (20:16:19) �[32mAnalyzing:�[0m 2438 targets (1706 packages loaded, 56785 targets configured)
1817:  �[32m[1,791 / 2,508]�[0m 81 / 91 tests;�[0m Creating source manifest for //rb/spec/integration/selenium/webdriver/bidi:script-firefox-beta-bidi; 0s local ... (6 actions, 4 running)
1818:  (20:16:20) �[32mINFO: �[0mFrom Building java/src/org/openqa/selenium/remote/libapi-class.jar (63 source files):
1819:  java/src/org/openqa/selenium/remote/ErrorHandler.java:46: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1820:  private final ErrorCodes errorCodes;
1821:  ^
1822:  java/src/org/openqa/selenium/remote/ErrorHandler.java:60: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1823:  this.errorCodes = new ErrorCodes();
1824:  ^
1825:  java/src/org/openqa/selenium/remote/ErrorHandler.java:68: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1826:  public ErrorHandler(ErrorCodes codes, boolean includeServerErrors) {
1827:  ^
1828:  java/src/org/openqa/selenium/remote/Response.java:97: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1829:  ErrorCodes errorCodes = new ErrorCodes();
1830:  ^
1831:  java/src/org/openqa/selenium/remote/Response.java:97: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1832:  ErrorCodes errorCodes = new ErrorCodes();
1833:  ^
1834:  java/src/org/openqa/selenium/remote/ProtocolHandshake.java:181: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1835:  response.setStatus(ErrorCodes.SUCCESS);
1836:  ^
1837:  java/src/org/openqa/selenium/remote/ProtocolHandshake.java:182: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1838:  response.setState(ErrorCodes.SUCCESS_STRING);
1839:  ^
1840:  java/src/org/openqa/selenium/remote/W3CHandshakeResponse.java:53: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1841:  new ErrorCodes().toStatus((String) rawError, Optional.of(tuple.getStatusCode())));
1842:  ^
1843:  java/src/org/openqa/selenium/remote/W3CHandshakeResponse.java:56: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1844:  new ErrorCodes().getExceptionType((String) rawError);
1845:  ^
1846:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:44: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1847:  private final ErrorCodes errorCodes = new ErrorCodes();
1848:  ^
1849:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:44: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1850:  private final ErrorCodes errorCodes = new ErrorCodes();
1851:  ^
1852:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:55: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1853:  int status = response.getStatus() == ErrorCodes.SUCCESS ? HTTP_OK : HTTP_INTERNAL_ERROR;
1854:  ^
1855:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:101: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1856:  response.setStatus(ErrorCodes.UNKNOWN_COMMAND);
1857:  ^
1858:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:103: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1859:  response.setStatus(ErrorCodes.UNHANDLED_ERROR);
1860:  ^
1861:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:117: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1862:  response.setStatus(ErrorCodes.SUCCESS);
1863:  ^
1864:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:118: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1865:  response.setState(errorCodes.toState(ErrorCodes.SUCCESS));
1866:  ^
1867:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:124: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1868:  response.setState(errorCodes.toState(ErrorCodes.SUCCESS));
1869:  ^
1870:  java/src/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodec.java:70: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1871:  private final ErrorCodes errorCodes = new ErrorCodes();
1872:  ^
1873:  java/src/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodec.java:70: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1874:  private final ErrorCodes errorCodes = new ErrorCodes();
1875:  ^
1876:  java/src/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodec.java:93: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1877:  response.setStatus(ErrorCodes.UNKNOWN_COMMAND);
1878:  ^
1879:  java/src/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodec.java:98: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1880:  response.setStatus(ErrorCodes.UNHANDLED_ERROR);
1881:  ^
1882:  java/src/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodec.java:145: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
1883:  response.setStatus(ErrorCodes.SUCCESS);
1884:  ^
...

1889:  (20:16:24) �[32mAnalyzing:�[0m 2438 targets (1709 packages loaded, 61320 targets configured)
1890:  �[32m[3,408 / 4,512]�[0m 81 / 379 tests;�[0m Creating source manifest for //java/test/org/openqa/selenium/bidi/webextension:WebExtensionTest; 0s local ... (36 actions, 22 running)
1891:  (20:16:28) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/action_test.html -> javascript/atoms/test/action_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
1892:  (20:16:28) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/attribute_test.html -> javascript/atoms/test/attribute_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
1893:  (20:16:28) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/child_locator_test.html -> javascript/atoms/test/child_locator_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
1894:  (20:16:28) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/click_link_test.html -> javascript/atoms/test/click_link_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
1895:  (20:16:28) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/click_submit_test.html -> javascript/atoms/test/click_submit_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
1896:  (20:16:28) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/click_test.html -> javascript/atoms/test/click_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
1897:  (20:16:28) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/clientrect_test.html -> javascript/atoms/test/clientrect_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
1898:  (20:16:28) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/color_test.html -> javascript/atoms/test/color_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
1899:  (20:16:28) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/deps.js -> javascript/atoms/test/deps.js obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
1900:  (20:16:28) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/dom_test.html -> javascript/atoms/test/dom_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
1901:  (20:16:28) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/drag_test.html -> javascript/atoms/test/drag_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
1902:  (20:16:28) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/enabled_test.html -> javascript/atoms/test/enabled_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
1903:  (20:16:28) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/enter_submit_test.html -> javascript/atoms/test/enter_submit_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
1904:  (20:16:28) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/error_test.html -> javascript/atoms/test/error_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
1905:  (20:16:28) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/events_test.html -> javascript/atoms/test/events_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
...

2158:  �[32m[9,793 / 12,228]�[0m 151 / 1994 tests;�[0m [Prepa] Testing //rb/spec/integration/selenium/webdriver:action_builder-firefox; 4s ... (50 actions, 0 running)
2159:  (20:17:15) �[32mAnalyzing:�[0m 2438 targets (1747 packages loaded, 69239 targets configured)
2160:  �[32m[10,196 / 12,733]�[0m 218 / 2153 tests;�[0m [Prepa] Testing //javascript/selenium-webdriver:test-logging-test.js-chrome ... (50 actions, 13 running)
2161:  (20:17:20) �[32mAnalyzing:�[0m 2438 targets (1747 packages loaded, 69352 targets configured)
2162:  �[32m[11,183 / 13,296]�[0m 289 / 2266 tests;�[0m [Prepa] Testing //rb/spec/integration/selenium/webdriver/firefox:profile-firefox ... (49 actions, 3 running)
2163:  (20:17:25) �[32mAnalyzing:�[0m 2438 targets (1747 packages loaded, 69468 targets configured)
2164:  �[32m[11,730 / 13,892]�[0m 353 / 2382 tests;�[0m [Prepa] Testing //rb/spec/integration/selenium/webdriver:navigation-edge-bidi ... (48 actions, 2 running)
2165:  (20:17:27) �[32mINFO: �[0mAnalyzed 2438 targets (1748 packages loaded, 69586 targets configured).
2166:  (20:17:30) �[32m[12,790 / 14,806]�[0m 428 / 2438 tests;�[0m [Prepa] Testing //rb/spec/integration/selenium/webdriver/remote:element-chrome-beta ... (45 actions, 12 running)
2167:  (20:17:31) �[32mINFO: �[0mFrom Compiling Rust bin cargo_toml_variable_extractor (1 files) [for tool]:
2168:  �[0m�[1m�[33mwarning�[0m�[0m�[1m: the gold linker is deprecated and has known bugs with Rust�[0m
2169:  �[0m  �[0m�[0m�[1m�[38;5;12m|�[0m
2170:  �[0m  �[0m�[0m�[1m�[38;5;12m= �[0m�[0m�[1mhelp�[0m�[0m: consider using LLD or ld from GNU binutils instead�[0m
2171:  �[0m�[1m�[33mwarning�[0m�[0m�[1m: 1 warning emitted�[0m
2172:  (20:17:31) �[32mINFO: �[0mFrom Building java/test/org/openqa/selenium/remote/libsmall-tests-test-lib.jar (5 source files) and running annotation processors (AutoServiceProcessor):
2173:  java/test/org/openqa/selenium/remote/WebDriverFixture.java:170: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2174:  response.setStatus(new ErrorCodes().toStatus(state, Optional.of(400)));
2175:  ^
2176:  (20:17:32) �[32mINFO: �[0mFrom Building java/test/org/openqa/selenium/remote/RemotableByTest.jar (1 source file) and running annotation processors (AutoServiceProcessor):
2177:  java/test/org/openqa/selenium/remote/RemotableByTest.java:23: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2178:  import static org.openqa.selenium.remote.ErrorCodes.SUCCESS_STRING;
2179:  ^
2180:  java/test/org/openqa/selenium/remote/RemotableByTest.java:23: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2181:  import static org.openqa.selenium.remote.ErrorCodes.SUCCESS_STRING;
2182:  ^
2183:  java/test/org/openqa/selenium/remote/RemotableByTest.java:23: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2184:  import static org.openqa.selenium.remote.ErrorCodes.SUCCESS_STRING;
2185:  ^
2186:  java/test/org/openqa/selenium/remote/RemotableByTest.java:45: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2187:  private final ErrorCodes errorCodes = new ErrorCodes();
2188:  ^
2189:  java/test/org/openqa/selenium/remote/RemotableByTest.java:45: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2190:  private final ErrorCodes errorCodes = new ErrorCodes();
2191:  ^
2192:  java/test/org/openqa/selenium/remote/RemotableByTest.java:45: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2193:  private final ErrorCodes errorCodes = new ErrorCodes();
2194:  ^
2195:  java/test/org/openqa/selenium/remote/RemotableByTest.java:45: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2196:  private final ErrorCodes errorCodes = new ErrorCodes();
2197:  ^
2198:  (20:17:32) �[32mINFO: �[0mFrom Building java/test/org/openqa/selenium/remote/ErrorHandlerTest.jar (1 source file) and running annotation processors (AutoServiceProcessor):
2199:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:79: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2200:  handler.throwIfResponseFailed(createResponse(ErrorCodes.SUCCESS), 100);
2201:  ^
2202:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:85: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2203:  assertThrowsCorrectExceptionType(ErrorCodes.NO_SUCH_WINDOW, NoSuchWindowException.class);
2204:  ^
2205:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:86: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2206:  assertThrowsCorrectExceptionType(ErrorCodes.NO_SUCH_FRAME, NoSuchFrameException.class);
2207:  ^
2208:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:87: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2209:  assertThrowsCorrectExceptionType(ErrorCodes.NO_SUCH_ELEMENT, NoSuchElementException.class);
2210:  ^
2211:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:88: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2212:  assertThrowsCorrectExceptionType(ErrorCodes.UNKNOWN_COMMAND, UnsupportedCommandException.class);
2213:  ^
2214:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:90: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2215:  ErrorCodes.METHOD_NOT_ALLOWED, UnsupportedCommandException.class);
2216:  ^
2217:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:92: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2218:  ErrorCodes.STALE_ELEMENT_REFERENCE, StaleElementReferenceException.class);
2219:  ^
2220:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:94: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2221:  ErrorCodes.INVALID_ELEMENT_STATE, InvalidElementStateException.class);
2222:  ^
2223:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:95: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2224:  assertThrowsCorrectExceptionType(ErrorCodes.XPATH_LOOKUP_ERROR, InvalidSelectorException.class);
2225:  ^
2226:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:107: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2227:  Response response = createResponse(ErrorCodes.UNHANDLED_ERROR);
2228:  ^
2229:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:120: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2230:  createResponse(ErrorCodes.UNHANDLED_ERROR, "boom"), 123))
2231:  ^
2232:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:133: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2233:  createResponse(ErrorCodes.UNHANDLED_ERROR, ImmutableMap.of("message", "boom")),
2234:  ^
2235:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:147: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2236:  ErrorCodes.UNHANDLED_ERROR,
2237:  ^
2238:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:167: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2239:  ErrorCodes.UNHANDLED_ERROR,
2240:  ^
2241:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:193: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2242:  createResponse(ErrorCodes.UNHANDLED_ERROR, toMap(serverError)), 123))
2243:  ^
2244:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:214: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2245:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
2246:  ^
2247:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:248: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2248:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
2249:  ^
2250:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:280: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2251:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
2252:  ^
2253:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:308: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2254:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
2255:  ^
2256:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:327: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2257:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
2258:  ^
2259:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:355: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2260:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
2261:  ^
2262:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:394: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2263:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
2264:  ^
2265:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:426: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2266:  createResponse(ErrorCodes.UNHANDLED_ERROR, toMap(serverError)), 123))
2267:  ^
2268:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:435: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2269:  exceptions.put(ErrorCodes.NO_SUCH_SESSION, NoSuchSessionException.class);
2270:  ^
2271:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:436: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2272:  exceptions.put(ErrorCodes.NO_SUCH_ELEMENT, NoSuchElementException.class);
2273:  ^
2274:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:437: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2275:  exceptions.put(ErrorCodes.NO_SUCH_FRAME, NoSuchFrameException.class);
2276:  ^
2277:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:438: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2278:  exceptions.put(ErrorCodes.UNKNOWN_COMMAND, UnsupportedCommandException.class);
2279:  ^
2280:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:439: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2281:  exceptions.put(ErrorCodes.STALE_ELEMENT_REFERENCE, StaleElementReferenceException.class);
2282:  ^
2283:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:440: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2284:  exceptions.put(ErrorCodes.INVALID_ELEMENT_STATE, InvalidElementStateException.class);
2285:  ^
2286:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:441: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2287:  exceptions.put(ErrorCodes.UNHANDLED_ERROR, WebDriverException.class);
2288:  ^
2289:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:442: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2290:  exceptions.put(ErrorCodes.JAVASCRIPT_ERROR, JavascriptException.class);
2291:  ^
2292:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:443: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2293:  exceptions.put(ErrorCodes.XPATH_LOOKUP_ERROR, InvalidSelectorException.class);
2294:  ^
2295:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:444: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2296:  exceptions.put(ErrorCodes.TIMEOUT, TimeoutException.class);
2297:  ^
2298:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:445: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2299:  exceptions.put(ErrorCodes.NO_SUCH_WINDOW, NoSuchWindowException.class);
2300:  ^
2301:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:446: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2302:  exceptions.put(ErrorCodes.INVALID_COOKIE_DOMAIN, InvalidCookieDomainException.class);
2303:  ^
2304:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:447: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2305:  exceptions.put(ErrorCodes.UNABLE_TO_SET_COOKIE, UnableToSetCookieException.class);
2306:  ^
2307:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:448: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2308:  exceptions.put(ErrorCodes.UNEXPECTED_ALERT_PRESENT, UnhandledAlertException.class);
2309:  ^
2310:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:449: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2311:  exceptions.put(ErrorCodes.NO_ALERT_PRESENT, NoAlertPresentException.class);
2312:  ^
2313:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:450: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2314:  exceptions.put(ErrorCodes.ASYNC_SCRIPT_TIMEOUT, ScriptTimeoutException.class);
2315:  ^
2316:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:451: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2317:  exceptions.put(ErrorCodes.INVALID_SELECTOR_ERROR, InvalidSelectorException.class);
2318:  ^
2319:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:452: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2320:  exceptions.put(ErrorCodes.SESSION_NOT_CREATED, SessionNotCreatedException.class);
2321:  ^
2322:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:453: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2323:  exceptions.put(ErrorCodes.MOVE_TARGET_OUT_OF_BOUNDS, MoveTargetOutOfBoundsException.class);
2324:  ^
2325:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:454: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2326:  exceptions.put(ErrorCodes.INVALID_XPATH_SELECTOR, InvalidSelectorException.class);
2327:  ^
2328:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:455: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2329:  exceptions.put(ErrorCodes.INVALID_XPATH_SELECTOR_RETURN_TYPER, InvalidSelectorException.class);
2330:  ^
2331:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:469: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2332:  ? ErrorCodes.INVALID_SELECTOR_ERROR
2333:  ^
2334:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:471: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2335:  assertThat(new ErrorCodes().toStatusCode(e)).isEqualTo(expected);
2336:  ^
2337:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:483: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2338:  response.setState(new ErrorCodes().toState(status));
2339:  ^
2340:  (20:17:33) �[32mINFO: �[0mFrom Building java/test/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodecTest.jar (1 source file):
2341:  java/test/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodecTest.java:26: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2342:  import static org.openqa.selenium.remote.ErrorCodes.METHOD_NOT_ALLOWED;
2343:  ^
2344:  java/test/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodecTest.java:55: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2345:  assertThat(decoded.getStatus()).isEqualTo(ErrorCodes.SUCCESS);
2346:  ^
2347:  java/test/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodecTest.java:81: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2348:  assertThat(decoded.getStatus()).isEqualTo(ErrorCodes.UNHANDLED_ERROR);
2349:  ^
2350:  java/test/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodecTest.java:107: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2351:  assertThat(decoded.getStatus()).isEqualTo(ErrorCodes.UNHANDLED_ERROR);
2352:  ^
2353:  (20:17:33) �[32mINFO: �[0mFrom Building java/test/org/openqa/selenium/json/JsonTest.jar (1 source file):
2354:  java/test/org/openqa/selenium/json/JsonTest.java:430: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2355:  assertThat(response.getState()).isEqualTo(new ErrorCodes().toState(0));
2356:  ^
2357:  java/test/org/openqa/selenium/json/JsonTest.java:441: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2358:  assertThat(response.getState()).isEqualTo(new ErrorCodes().toState(0));
2359:  ^
2360:  java/test/org/openqa/selenium/json/JsonTest.java:454: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
2361:  assertThat(response.getState()).isEqualTo(new ErrorCodes().toState(32));
2362:  ^
...

2553:  (20:22:04) �[32m[17,347 / 17,349]�[0m 2346 / 2438 tests;�[0m Testing //rb/spec/integration/selenium/webdriver:network-firefox-remote-bidi; 215s remote, remote-cache ... (2 actions running)
2554:  (20:22:11) �[32m[17,348 / 17,349]�[0m 2347 / 2438 tests;�[0m Testing //rb/spec/integration/selenium/webdriver:network-firefox-remote-bidi; 223s remote, remote-cache
2555:  (20:22:17) �[32m[17,348 / 17,349]�[0m 2347 / 2438 tests;�[0m Testing //rb/spec/integration/selenium/webdriver:network-firefox-remote-bidi; 229s remote, remote-cache
2556:  (20:22:47) �[32m[17,348 / 17,349]�[0m 2347 / 2438 tests;�[0m Testing //rb/spec/integration/selenium/webdriver:network-firefox-remote-bidi; 259s remote, remote-cache
2557:  (20:23:47) �[32m[17,348 / 17,349]�[0m 2347 / 2438 tests;�[0m Testing //rb/spec/integration/selenium/webdriver:network-firefox-remote-bidi; 319s remote, remote-cache
2558:  (20:24:47) �[32m[17,348 / 17,349]�[0m 2347 / 2438 tests;�[0m Testing //rb/spec/integration/selenium/webdriver:network-firefox-remote-bidi; 379s remote, remote-cache
2559:  (20:25:01) �[32m[17,348 / 17,349]�[0m 2347 / 2438 tests;�[0m Testing //rb/spec/integration/selenium/webdriver:network-firefox-remote-bidi; 393s remote, remote-cache
2560:  (20:25:02) �[31m�[1mFAIL: �[0m//rb/spec/integration/selenium/webdriver:network-firefox-remote-bidi (see /home/runner/.bazel/execroot/_main/bazel-out/k8-fastbuild/testlogs/rb/spec/integration/selenium/webdriver/network-firefox-remote-bidi/test_attempts/attempt_1.log)
2561:  (20:25:06) �[32m[17,348 / 17,349]�[0m 2347 / 2438 tests;�[0m Testing //rb/spec/integration/selenium/webdriver:network-firefox-remote-bidi; 398s remote, remote-cache
2562:  (20:25:47) �[32m[17,348 / 17,349]�[0m 2347 / 2438 tests;�[0m Testing //rb/spec/integration/selenium/webdriver:network-firefox-remote-bidi; 439s remote, remote-cache
2563:  (20:26:47) �[32m[17,348 / 17,349]�[0m 2347 / 2438 tests;�[0m Testing //rb/spec/integration/selenium/webdriver:network-firefox-remote-bidi; 499s remote, remote-cache
2564:  (20:27:47) �[32m[17,348 / 17,349]�[0m 2347 / 2438 tests;�[0m Testing //rb/spec/integration/selenium/webdriver:network-firefox-remote-bidi; 559s remote, remote-cache
2565:  (20:28:47) �[32m[17,348 / 17,349]�[0m 2347 / 2438 tests;�[0m Testing //rb/spec/integration/selenium/webdriver:network-firefox-remote-bidi; 619s remote, remote-cache
2566:  (20:29:24) �[32m[17,348 / 17,349]�[0m 2347 / 2438 tests;�[0m Testing //rb/spec/integration/selenium/webdriver:network-firefox-remote-bidi; 655s remote, remote-cache
2567:  (20:29:24) �[31m�[1mFAIL: �[0m//rb/spec/integration/selenium/webdriver:network-firefox-remote-bidi (see /home/runner/.bazel/execroot/_main/bazel-out/k8-fastbuild/testlogs/rb/spec/integration/selenium/webdriver/network-firefox-remote-bidi/test.log)
2568:  �[31m�[1mFAILED: �[0m//rb/spec/integration/selenium/webdriver:network-firefox-remote-bidi (Summary)
2569:  /home/runner/.bazel/execroot/_main/bazel-out/k8-fastbuild/testlogs/rb/spec/integration/selenium/webdriver/network-firefox-remote-bidi/test.log
...

2576:  driver: remote
2577:  version: stable
2578:  platform: linux
2579:  ci: github
2580:  rbe: true
2581:  ruby: jruby 10.0.0.0 (3.4.2) 2025-04-13 6ed59bc847 OpenJDK 64-Bit Server VM 21.0.4+7-LTS on 21.0.4+7-LTS [x86_64-linux]
2582:  Selenium::WebDriver::Network
2583:  /mnt/engflow/worker/work/0/exec/bazel-out/k8-fastbuild/bin/rb/spec/integration/selenium/webdriver/network-firefox-remote-bidi.sh.runfiles/rules_ruby++ruby+bundle/vendor/bundle/jruby/3.4.0/gems/websocket-1.2.11/lib/websocket/handshake/base.rb:40: warning: previous definition of to_s was here
2584:  /mnt/engflow/worker/work/0/exec/bazel-out/k8-fastbuild/bin/rb/spec/integration/selenium/webdriver/network-firefox-remote-bidi.sh.runfiles/rules_ruby++ruby+bundle/vendor/bundle/jruby/3.4.0/gems/websocket-1.2.11/lib/websocket/handshake/base.rb:53: warning: previous definition of valid? was here
2585:  /mnt/engflow/worker/work/0/exec/bazel-out/k8-fastbuild/bin/rb/spec/integration/selenium/webdriver/network-firefox-remote-bidi.sh.runfiles/rules_ruby++ruby+bundle/vendor/bundle/jruby/3.4.0/gems/websocket-1.2.11/lib/websocket/handshake/client.rb:57: warning: previous definition of initialize was here
2586:  /mnt/engflow/worker/work/0/exec/bazel-out/k8-fastbuild/bin/rb/spec/integration/selenium/webdriver/network-firefox-remote-bidi.sh.runfiles/rules_ruby++ruby+bundle/vendor/bundle/jruby/3.4.0/gems/websocket-1.2.11/lib/websocket/handshake/client.rb:90: warning: previous definition of << was here
2587:  /mnt/engflow/worker/work/0/exec/bazel-out/k8-fastbuild/bin/rb/spec/integration/selenium/webdriver/network-firefox-remote-bidi.sh.runfiles/rules_ruby++ruby+bundle/vendor/bundle/jruby/3.4.0/gems/websocket-1.2.11/lib/websocket/frame/base.rb:19: warning: previous definition of initialize was here
2588:  /mnt/engflow/worker/work/0/exec/bazel-out/k8-fastbuild/bin/rb/spec/integration/selenium/webdriver/network-firefox-remote-bidi.sh.runfiles/rules_ruby++ruby+bundle/vendor/bundle/jruby/3.4.0/gems/websocket-1.2.11/lib/websocket/frame/outgoing.rb:28: warning: previous definition of to_s was here
2589:  /mnt/engflow/worker/work/0/exec/bazel-out/k8-fastbuild/bin/rb/spec/integration/selenium/webdriver/network-firefox-remote-bidi.sh.runfiles/rules_ruby++ruby+bundle/vendor/bundle/jruby/3.4.0/gems/websocket-1.2.11/lib/websocket/frame/incoming.rb:40: warning: previous definition of next was here
2590:  adds an auth handler
2591:  adds an auth handler with a filter (FAILED - 1)
2592:  adds an auth handler with multiple filters
2593:  adds an auth handler with a pattern type
2594:  removes an auth handler (FAILED - 2)
2595:  clears all auth handlers
2596:  continues without auth
2597:  cancels auth
2598:  adds a request handler
2599:  adds a request handler with a filter
2600:  adds a request handler with multiple filters
2601:  adds a request handler with a pattern type
2602:  adds a request handler with attributes (FAILED - 3)
2603:  fails a request
2604:  removes a request handler
2605:  clears all request handlers
2606:  adds a response handler
2607:  adds a response handler with a filter
2608:  adds a response handler with multiple filters
2609:  adds a response handler with a pattern type
2610:  adds a response handler with attributes
2611:  adds an auth handler (FAILED - 4)
2612:  adds an auth handler with a filter (FAILED - 5)
2613:  adds an auth handler with multiple filters (FAILED - 6)
2614:  adds an auth handler with a pattern type (FAILED - 7)
2615:  removes an auth handler (FAILED - 8)
2616:  clears all auth handlers (FAILED - 9)
2617:  continues without auth (FAILED - 10)
2618:  cancels auth (FAILED - 11)
2619:  adds a request handler (FAILED - 12)
2620:  adds a request handler with a filter (FAILED - 13)
2621:  adds a request handler with multiple filters (FAILED - 14)
2622:  adds a request handler with a pattern type (FAILED - 15)
2623:  adds a request handler with attributes (FAILED - 16)
2624:  fails a request (FAILED - 17)
2625:  removes a request handler (FAILED - 18)
2626:  clears all request handlers (FAILED - 19)
2627:  adds a response handler (FAILED - 20)
2628:  Failures:
2629:  1) Selenium::WebDriver::Network adds an auth handler with a filter
2630:  Got 0 failures and 2 other errors:
2631:  1.1) Failure/Error: Unable to find org/jruby/RubyIO.java to read failed line
2632:  IOError:
2633:  stream closed in another thread
2634:  # ./rb/lib/selenium/webdriver/common/websocket_connection.rb:102:in 'block in attach_socket_listener'
2635:  1.2) Failure/Error:
2636:  reset_driver!(web_socket_url: true) do |driver|
2637:  network = described_class.new(driver)
2638:  network.add_response_handler do |response|
2639:  response.status = 200
2640:  response.headers['foo'] = 'bar'
2641:  response.body = '<html><head><title>Hello World!</title></head><body/></html>'
2642:  response.provide_response
2643:  end
2644:  driver.navigate.to url_for('formPage.html')
2645:  source = driver.page_source
2646:  IOError:
2647:  stream closed in another thread
2648:  # ./rb/lib/selenium/webdriver/common/websocket_connection.rb:48:in 'close'
2649:  # ./rb/lib/selenium/webdriver/bidi.rb:39:in 'close'
2650:  # ./rb/lib/selenium/webdriver/remote/bidi_bridge.rb:51:in 'quit'
2651:  # ./rb/lib/selenium/webdriver/common/driver.rb:181:in 'quit'
2652:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:185:in 'create_driver!'
2653:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:65:in 'driver_instance'
2654:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:74:in 'reset_driver!'
2655:  # ./rb/spec/integration/selenium/webdriver/spec_support/helpers.rb:29:in 'reset_driver!'
2656:  # ./rb/spec/integration/selenium/webdriver/network_spec.rb:269:in 'block in WebDriver'
2657:  2) Selenium::WebDriver::Network removes an auth handler
2658:  Got 0 failures and 2 other errors:
2659:  2.1) Failure/Error: Unable to find org/jruby/RubyIO.java to read failed line
2660:  IOError:
2661:  stream closed in another thread
2662:  # ./rb/lib/selenium/webdriver/common/websocket_connection.rb:102:in 'block in attach_socket_listener'
2663:  2.2) Failure/Error:
2664:  reset_driver!(web_socket_url: true) do |driver|
2665:  network = described_class.new(driver)
2666:  network.add_response_handler do |response|
2667:  response.status = 200
2668:  response.headers['foo'] = 'bar'
2669:  response.body = '<html><head><title>Hello World!</title></head><body/></html>'
2670:  response.provide_response
2671:  end
2672:  driver.navigate.to url_for('formPage.html')
2673:  source = driver.page_source
2674:  IOError:
2675:  stream closed in another thread
2676:  # ./rb/lib/selenium/webdriver/common/websocket_connection.rb:48:in 'close'
2677:  # ./rb/lib/selenium/webdriver/bidi.rb:39:in 'close'
2678:  # ./rb/lib/selenium/webdriver/remote/bidi_bridge.rb:51:in 'quit'
2679:  # ./rb/lib/selenium/webdriver/common/driver.rb:181:in 'quit'
2680:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:185:in 'create_driver!'
2681:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:65:in 'driver_instance'
2682:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:74:in 'reset_driver!'
2683:  # ./rb/spec/integration/selenium/webdriver/spec_support/helpers.rb:29:in 'reset_driver!'
2684:  # ./rb/spec/integration/selenium/webdriver/network_spec.rb:269:in 'block in WebDriver'
2685:  3) Selenium::WebDriver::Network adds a request handler with attributes
2686:  Got 0 failures and 2 other errors:
2687:  3.1) Failure/Error: Unable to find org/jruby/RubyIO.java to read failed line
2688:  IOError:
2689:  stream closed in another thread
2690:  # ./rb/lib/selenium/webdriver/common/websocket_connection.rb:102:in 'block in attach_socket_listener'
2691:  3.2) Failure/Error:
2692:  reset_driver!(web_socket_url: true) do |driver|
2693:  network = described_class.new(driver)
2694:  network.add_response_handler do |response|
2695:  response.status = 200
2696:  response.headers['foo'] = 'bar'
2697:  response.body = '<html><head><title>Hello World!</title></head><body/></html>'
2698:  response.provide_response
2699:  end
2700:  driver.navigate.to url_for('formPage.html')
2701:  source = driver.page_source
2702:  IOError:
2703:  stream closed in another thread
2704:  # ./rb/lib/selenium/webdriver/common/websocket_connection.rb:48:in 'close'
2705:  # ./rb/lib/selenium/webdriver/bidi.rb:39:in 'close'
2706:  # ./rb/lib/selenium/webdriver/remote/bidi_bridge.rb:51:in 'quit'
2707:  # ./rb/lib/selenium/webdriver/common/driver.rb:181:in 'quit'
2708:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:185:in 'create_driver!'
2709:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:65:in 'driver_instance'
2710:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:74:in 'reset_driver!'
2711:  # ./rb/spec/integration/selenium/webdriver/spec_support/helpers.rb:29:in 'reset_driver!'
2712:  # ./rb/spec/integration/selenium/webdriver/network_spec.rb:269:in 'block in WebDriver'
2713:  4) Selenium::WebDriver::Network adds an auth handler
2714:  Failure/Error:
2715:  reset_driver!(web_socket_url: true) do |driver|
2716:  network = described_class.new(driver)
2717:  network.add_response_handler do |response|
2718:  response.status = 200
2719:  response.headers['foo'] = 'bar'
2720:  response.body = '<html><head><title>Hello World!</title></head><body/></html>'
2721:  response.provide_response
2722:  end
2723:  driver.navigate.to url_for('formPage.html')
2724:  source = driver.page_source
2725:  IOError:
2726:  stream closed in another thread
2727:  # ./rb/lib/selenium/webdriver/common/websocket_connection.rb:48:in 'close'
2728:  # ./rb/lib/selenium/webdriver/bidi.rb:39:in 'close'
2729:  # ./rb/lib/selenium/webdriver/remote/bidi_bridge.rb:51:in 'quit'
2730:  # ./rb/lib/selenium/webdriver/common/driver.rb:181:in 'quit'
2731:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:185:in 'create_driver!'
2732:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:65:in 'driver_instance'
2733:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:74:in 'reset_driver!'
2734:  # ./rb/spec/integration/selenium/webdriver/spec_support/helpers.rb:29:in 'reset_driver!'
2735:  # ./rb/spec/integration/selenium/webdriver/network_spec.rb:269:in 'block in WebDriver'
2736:  5) Selenium::WebDriver::Network adds an auth handler with a filter
2737:  Got 0 failures and 2 other errors:
2738:  5.1) Failure/Error: Unable to find org/jruby/RubyIO.java to read failed line
2739:  IOError:
2740:  stream closed in another thread
2741:  # ./rb/lib/selenium/webdriver/common/websocket_connection.rb:102:in 'block in attach_socket_listener'
2742:  5.2) Failure/Error:
2743:  reset_driver!(web_socket_url: true) do |driver|
2744:  network = described_class.new(driver)
2745:  network.add_response_handler do |response|
2746:  response.status = 200
2747:  response.headers['foo'] = 'bar'
2748:  response.body = '<html><head><title>Hello World!</title></head><body/></html>'
2749:  response.provide_response
2750:  end
2751:  driver.navigate.to url_for('formPage.html')
2752:  source = driver.page_source
2753:  IOError:
2754:  stream closed in another thread
2755:  # ./rb/lib/selenium/webdriver/common/websocket_connection.rb:48:in 'close'
2756:  # ./rb/lib/selenium/webdriver/bidi.rb:39:in 'close'
2757:  # ./rb/lib/selenium/webdriver/remote/bidi_bridge.rb:51:in 'quit'
2758:  # ./rb/lib/selenium/webdriver/common/driver.rb:181:in 'quit'
2759:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:185:in 'create_driver!'
2760:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:65:in 'driver_instance'
2761:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:74:in 'reset_driver!'
2762:  # ./rb/spec/integration/selenium/webdriver/spec_support/helpers.rb:29:in 'reset_driver!'
2763:  # ./rb/spec/integration/selenium/webdriver/network_spec.rb:269:in 'block in WebDriver'
2764:  6) Selenium::WebDriver::Network adds an auth handler with multiple filters
2765:  Failure/Error:
2766:  reset_driver!(web_socket_url: true) do |driver|
2767:  network = described_class.new(driver)
2768:  network.add_response_handler do |response|
2769:  response.status = 200
2770:  response.headers['foo'] = 'bar'
2771:  response.body = '<html><head><title>Hello World!</title></head><body/></html>'
2772:  response.provide_response
2773:  end
2774:  driver.navigate.to url_for('formPage.html')
2775:  source = driver.page_source
2776:  IOError:
2777:  stream closed in another thread
2778:  # ./rb/lib/selenium/webdriver/common/websocket_connection.rb:48:in 'close'
2779:  # ./rb/lib/selenium/webdriver/bidi.rb:39:in 'close'
2780:  # ./rb/lib/selenium/webdriver/remote/bidi_bridge.rb:51:in 'quit'
2781:  # ./rb/lib/selenium/webdriver/common/driver.rb:181:in 'quit'
2782:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:185:in 'create_driver!'
2783:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:65:in 'driver_instance'
2784:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:74:in 'reset_driver!'
2785:  # ./rb/spec/integration/selenium/webdriver/spec_support/helpers.rb:29:in 'reset_driver!'
2786:  # ./rb/spec/integration/selenium/webdriver/network_spec.rb:269:in 'block in WebDriver'
2787:  7) Selenium::WebDriver::Network adds an auth handler with a pattern type
2788:  Failure/Error:
2789:  reset_driver!(web_socket_url: true) do |driver|
2790:  network = described_class.new(driver)
2791:  network.add_response_handler do |response|
2792:  response.status = 200
2793:  response.headers['foo'] = 'bar'
2794:  response.body = '<html><head><title>Hello World!</title></head><body/></html>'
2795:  response.provide_response
2796:  end
2797:  driver.navigate.to url_for('formPage.html')
2798:  source = driver.page_source
2799:  IOError:
2800:  stream closed in another thread
2801:  # ./rb/lib/selenium/webdriver/common/websocket_connection.rb:48:in 'close'
2802:  # ./rb/lib/selenium/webdriver/bidi.rb:39:in 'close'
2803:  # ./rb/lib/selenium/webdriver/remote/bidi_bridge.rb:51:in 'quit'
2804:  # ./rb/lib/selenium/webdriver/common/driver.rb:181:in 'quit'
2805:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:185:in 'create_driver!'
2806:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:65:in 'driver_instance'
2807:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:74:in 'reset_driver!'
2808:  # ./rb/spec/integration/selenium/webdriver/spec_support/helpers.rb:29:in 'reset_driver!'
2809:  # ./rb/spec/integration/selenium/webdriver/network_spec.rb:269:in 'block in WebDriver'
2810:  8) Selenium::WebDriver::Network removes an auth handler
2811:  Got 0 failures and 2 other errors:
2812:  8.1) Failure/Error: Unable to find org/jruby/RubyIO.java to read failed line
2813:  IOError:
2814:  stream closed in another thread
2815:  # ./rb/lib/selenium/webdriver/common/websocket_connection.rb:102:in 'block in attach_socket_listener'
2816:  8.2) Failure/Error:
2817:  reset_driver!(web_socket_url: true) do |driver|
2818:  network = described_class.new(driver)
2819:  network.add_response_handler do |response|
2820:  response.status = 200
2821:  response.headers['foo'] = 'bar'
2822:  response.body = '<html><head><title>Hello World!</title></head><body/></html>'
2823:  response.provide_response
2824:  end
2825:  driver.navigate.to url_for('formPage.html')
2826:  source = driver.page_source
2827:  IOError:
2828:  stream closed in another thread
2829:  # ./rb/lib/selenium/webdriver/common/websocket_connection.rb:48:in 'close'
2830:  # ./rb/lib/selenium/webdriver/bidi.rb:39:in 'close'
2831:  # ./rb/lib/selenium/webdriver/remote/bidi_bridge.rb:51:in 'quit'
2832:  # ./rb/lib/selenium/webdriver/common/driver.rb:181:in 'quit'
2833:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:185:in 'create_driver!'
2834:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:65:in 'driver_instance'
2835:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:74:in 'reset_driver!'
2836:  # ./rb/spec/integration/selenium/webdriver/spec_support/helpers.rb:29:in 'reset_driver!'
2837:  # ./rb/spec/integration/selenium/webdriver/network_spec.rb:269:in 'block in WebDriver'
2838:  9) Selenium::WebDriver::Network clears all auth handlers
2839:  Failure/Error:
2840:  reset_driver!(web_socket_url: true) do |driver|
2841:  network = described_class.new(driver)
2842:  network.add_response_handler do |response|
2843:  response.status = 200
2844:  response.headers['foo'] = 'bar'
2845:  response.body = '<html><head><title>Hello World!</title></head><body/></html>'
2846:  response.provide_response
2847:  end
2848:  driver.navigate.to url_for('formPage.html')
2849:  source = driver.page_source
2850:  IOError:
2851:  stream closed in another thread
2852:  # ./rb/lib/selenium/webdriver/common/websocket_connection.rb:48:in 'close'
2853:  # ./rb/lib/selenium/webdriver/bidi.rb:39:in 'close'
2854:  # ./rb/lib/selenium/webdriver/remote/bidi_bridge.rb:51:in 'quit'
2855:  # ./rb/lib/selenium/webdriver/common/driver.rb:181:in 'quit'
2856:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:185:in 'create_driver!'
2857:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:65:in 'driver_instance'
2858:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:74:in 'reset_driver!'
2859:  # ./rb/spec/integration/selenium/webdriver/spec_support/helpers.rb:29:in 'reset_driver!'
2860:  # ./rb/spec/integration/selenium/webdriver/network_spec.rb:269:in 'block in WebDriver'
2861:  10) Selenium::WebDriver::Network continues without auth
2862:  Failure/Error:
2863:  reset_driver!(web_socket_url: true) do |driver|
2864:  network = described_class.new(driver)
2865:  network.add_response_handler do |response|
2866:  response.status = 200
2867:  response.headers['foo'] = 'bar'
2868:  response.body = '<html><head><title>Hello World!</title></head><body/></html>'
2869:  response.provide_response
2870:  end
2871:  driver.navigate.to url_for('formPage.html')
2872:  source = driver.page_source
2873:  IOError:
2874:  stream closed in another thread
2875:  # ./rb/lib/selenium/webdriver/common/websocket_connection.rb:48:in 'close'
2876:  # ./rb/lib/selenium/webdriver/bidi.rb:39:in 'close'
2877:  # ./rb/lib/selenium/webdriver/remote/bidi_bridge.rb:51:in 'quit'
2878:  # ./rb/lib/selenium/webdriver/common/driver.rb:181:in 'quit'
2879:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:185:in 'create_driver!'
2880:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:65:in 'driver_instance'
2881:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:74:in 'reset_driver!'
2882:  # ./rb/spec/integration/selenium/webdriver/spec_support/helpers.rb:29:in 'reset_driver!'
2883:  # ./rb/spec/integration/selenium/webdriver/network_spec.rb:269:in 'block in WebDriver'
2884:  11) Selenium::WebDriver::Network cancels auth
2885:  Failure/Error:
2886:  reset_driver!(web_socket_url: true) do |driver|
2887:  network = described_class.new(driver)
2888:  network.add_response_handler do |response|
2889:  response.status = 200
2890:  response.headers['foo'] = 'bar'
2891:  response.body = '<html><head><title>Hello World!</title></head><body/></html>'
2892:  response.provide_response
2893:  end
2894:  driver.navigate.to url_for('formPage.html')
2895:  source = driver.page_source
2896:  IOError:
2897:  stream closed in another thread
2898:  # ./rb/lib/selenium/webdriver/common/websocket_connection.rb:48:in 'close'
2899:  # ./rb/lib/selenium/webdriver/bidi.rb:39:in 'close'
2900:  # ./rb/lib/selenium/webdriver/remote/bidi_bridge.rb:51:in 'quit'
2901:  # ./rb/lib/selenium/webdriver/common/driver.rb:181:in 'quit'
2902:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:185:in 'create_driver!'
2903:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:65:in 'driver_instance'
2904:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:74:in 'reset_driver!'
2905:  # ./rb/spec/integration/selenium/webdriver/spec_support/helpers.rb:29:in 'reset_driver!'
2906:  # ./rb/spec/integration/selenium/webdriver/network_spec.rb:269:in 'block in WebDriver'
2907:  12) Selenium::WebDriver::Network adds a request handler
2908:  Failure/Error:
2909:  reset_driver!(web_socket_url: true) do |driver|
2910:  network = described_class.new(driver)
2911:  network.add_response_handler do |response|
2912:  response.status = 200
2913:  response.headers['foo'] = 'bar'
2914:  response.body = '<html><head><title>Hello World!</title></head><body/></html>'
2915:  response.provide_response
2916:  end
2917:  driver.navigate.to url_for('formPage.html')
2918:  source = driver.page_source
2919:  IOError:
2920:  stream closed in another thread
2921:  # ./rb/lib/selenium/webdriver/common/websocket_connection.rb:48:in 'close'
2922:  # ./rb/lib/selenium/webdriver/bidi.rb:39:in 'close'
2923:  # ./rb/lib/selenium/webdriver/remote/bidi_bridge.rb:51:in 'quit'
2924:  # ./rb/lib/selenium/webdriver/common/driver.rb:181:in 'quit'
2925:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:185:in 'create_driver!'
2926:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:65:in 'driver_instance'
2927:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:74:in 'reset_driver!'
2928:  # ./rb/spec/integration/selenium/webdriver/spec_support/helpers.rb:29:in 'reset_driver!'
2929:  # ./rb/spec/integration/selenium/webdriver/network_spec.rb:269:in 'block in WebDriver'
2930:  13) Selenium::WebDriver::Network adds a request handler with a filter
2931:  Failure/Error:
2932:  reset_driver!(web_socket_url: true) do |driver|
2933:  network = described_class.new(driver)
2934:  network.add_response_handler do |response|
2935:  response.status = 200
2936:  response.headers['foo'] = 'bar'
2937:  response.body = '<html><head><title>Hello World!</title></head><body/></html>'
2938:  response.provide_response
2939:  end
2940:  driver.navigate.to url_for('formPage.html')
2941:  source = driver.page_source
2942:  IOError:
2943:  stream closed in another thread
2944:  # ./rb/lib/selenium/webdriver/common/websocket_connection.rb:48:in 'close'
2945:  # ./rb/lib/selenium/webdriver/bidi.rb:39:in 'close'
2946:  # ./rb/lib/selenium/webdriver/remote/bidi_bridge.rb:51:in 'quit'
2947:  # ./rb/lib/selenium/webdriver/common/driver.rb:181:in 'quit'
2948:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:185:in 'create_driver!'
2949:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:65:in 'driver_instance'
2950:  # ./rb/spec/integration/selenium/webdriver/spec_support/test_environment.rb:74:in 'reset_driver!'
2951:  # ./rb/spec/integration/selenium/webdriver/spec_support/helpers.rb:29:in 'reset_driver!'
2952:  # ./rb/spec/integration/selenium/webdriver/network_spec.rb:269:in 'block in WebDriver'
2953:  14) Selenium::WebDriver::Network adds a request handler with multiple filters
2954:  Failure/Error:
2955:  reset_driver!(web_socket_url: true) do |driver|
2956:  network = described_class.new(driver)
2957:  network.add_response_handler do |response|
2958:  response.status = 200
2959:  response.headers['foo'] = 'bar'
2960:  response.body = '<html><head><title>Hello World!</title></head><body/></html>'
2961:  respo...

@titusfortner
Copy link
Member Author

I think these new remote-bidi failures are flaky and will be fixed by #16487
Rerun tests after that is merged.

@titusfortner titusfortner marked this pull request as draft October 24, 2025 14:58
@titusfortner
Copy link
Member Author

Moving to draft, still needs optimizing

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

B-build Includes scripting, bazel and CI integrations B-devtools Includes everything BiDi or Chrome DevTools related C-rb Ruby Bindings Review effort 2/5

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants