Prepare code for more shell-based "browsers" We want to support jsc and spidermonkey shells as well for easy jetstream profiling / running. Thus we need to refactor the code a bit to share common helpers between the various shell-based "browsers" - Move browser/d8 to browser/shell Bypass-Check-License: Moving files Change-Id: I46b2843f505a0c2d2528bd0465fe57b4374303f6 Reviewed-on: https://chromium-review.googlesource.com/c/crossbench/+/7802740 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Patrick Thier <pthier@chromium.org>
diff --git a/crossbench/browsers/all.py b/crossbench/browsers/all.py index 3f4b1c9..5dc0042 100644 --- a/crossbench/browsers/all.py +++ b/crossbench/browsers/all.py
@@ -16,7 +16,6 @@ ChromiumWebDriverChromeOsSsh, ChromiumWebDriverSsh, \ LocalChromiumWebDriverAndroid from crossbench.browsers.chromium_based.chromium_based import ChromiumBased -from crossbench.browsers.d8.d8 import D8 from crossbench.browsers.edge.edge import Edge from crossbench.browsers.edge.webdriver import EdgeWebDriver from crossbench.browsers.firefox.firefox import Firefox @@ -25,6 +24,7 @@ from crossbench.browsers.safari.safari import Safari from crossbench.browsers.safari.webdriver import SafariWebDriver, \ SafariWebdriverIOS +from crossbench.browsers.shell.d8.d8 import D8 from crossbench.browsers.webkit.webdriver import WebKitWebDriver from crossbench.browsers.webview.browser import WebviewBrowser from crossbench.browsers.webview.embedder import WebviewEmbedder
diff --git a/crossbench/browsers/shell/__init__.py b/crossbench/browsers/shell/__init__.py new file mode 100644 index 0000000..5b5036e --- /dev/null +++ b/crossbench/browsers/shell/__init__.py
@@ -0,0 +1,3 @@ +# Copyright 2026 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file.
diff --git a/crossbench/browsers/d8/__init__.py b/crossbench/browsers/shell/d8/__init__.py similarity index 100% rename from crossbench/browsers/d8/__init__.py rename to crossbench/browsers/shell/d8/__init__.py
diff --git a/crossbench/browsers/d8/d8.py b/crossbench/browsers/shell/d8/d8.py similarity index 96% rename from crossbench/browsers/d8/d8.py rename to crossbench/browsers/shell/d8/d8.py index f131917..f7aa452 100644 --- a/crossbench/browsers/d8/d8.py +++ b/crossbench/browsers/shell/d8/d8.py
@@ -14,9 +14,9 @@ from crossbench import exception from crossbench.browsers.attributes import BrowserAttributes from crossbench.browsers.browser import Browser -from crossbench.browsers.d8.shell import D8Shell -from crossbench.browsers.d8.url_mapper import D8URLMapper, DummyURLMapper -from crossbench.browsers.d8.version import D8Version +from crossbench.browsers.shell.d8.shell import D8Shell +from crossbench.browsers.shell.d8.version import D8Version +from crossbench.browsers.shell.url_mapper import D8URLMapper, DummyURLMapper from crossbench.browsers.viewport import Viewport from crossbench.flags.chrome import ChromeFlags from crossbench.network.local_file_server import LocalFileNetwork
diff --git a/crossbench/browsers/d8/shell.py b/crossbench/browsers/shell/d8/shell.py similarity index 100% rename from crossbench/browsers/d8/shell.py rename to crossbench/browsers/shell/d8/shell.py
diff --git a/crossbench/browsers/d8/version.py b/crossbench/browsers/shell/d8/version.py similarity index 100% rename from crossbench/browsers/d8/version.py rename to crossbench/browsers/shell/d8/version.py
diff --git a/crossbench/browsers/d8/mock/jetstream.js b/crossbench/browsers/shell/mock/jetstream.js similarity index 100% rename from crossbench/browsers/d8/mock/jetstream.js rename to crossbench/browsers/shell/mock/jetstream.js
diff --git a/crossbench/browsers/d8/url_mapper.py b/crossbench/browsers/shell/url_mapper.py similarity index 97% rename from crossbench/browsers/d8/url_mapper.py rename to crossbench/browsers/shell/url_mapper.py index c6d9dd2..0a57ff0 100644 --- a/crossbench/browsers/d8/url_mapper.py +++ b/crossbench/browsers/shell/url_mapper.py
@@ -11,7 +11,7 @@ from crossbench.network.local_file_server import LocalFileNetwork if TYPE_CHECKING: - from crossbench.browsers.d8.d8 import D8 + from crossbench.browsers.shell.d8.d8 import D8 from crossbench.network.base import Network from crossbench.runner.groups.session import BrowserSessionRunGroup
diff --git a/tests/crossbench/browsers/test_version.py b/tests/crossbench/browsers/test_version.py index 1098d32..6794067 100644 --- a/tests/crossbench/browsers/test_version.py +++ b/tests/crossbench/browsers/test_version.py
@@ -13,9 +13,9 @@ from crossbench.browsers.chrome.version import ChromeVersion from crossbench.browsers.chromium.version import ChromeDriverVersion, \ ChromiumVersion -from crossbench.browsers.d8.version import D8Version from crossbench.browsers.firefox.version import FirefoxVersion from crossbench.browsers.safari.version import SafariVersion +from crossbench.browsers.shell.d8.version import D8Version from crossbench.browsers.version import BrowserVersion, \ BrowserVersionChannel, PartialBrowserVersionError, UnknownBrowserVersion from crossbench.helper.version import VersionParseError