tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit f2dfa30d5990f9482e837da6357f2f6af7f77ffc
parent bccd86ae369c1c1c22ffe897596d8182e33b990e
Author: jalonthomas <64996364+jalonthomas@users.noreply.github.com>
Date:   Tue, 21 Oct 2025 10:38:18 +0000

Bug 1994437 [wpt PR 55452] - Update testdriver's set_permission methods to accept optional `embeddedOrigin`, a=testonly

Automatic update from web-platform-tests
Update testdriver's set_permission methods to accept optional `embeddedOrigin` (#55452)

* Add embedded_origin to testdriver

* Add param to WebDriverBidiPermissionsProtocolPart

* Finish updating to embeddedOrigin

* Add param types and return types

* Return awaitable instead of None

* Use Any return type
--

wpt-commits: c182610a274381f58ec5ad69bd4e885e7ba0bca6
wpt-pr: 55452

Diffstat:
Mtesting/web-platform/tests/resources/testdriver.js | 5++++-
Mtesting/web-platform/tests/tools/wptrunner/wptrunner/executors/asyncactions.py | 4+++-
Mtesting/web-platform/tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py | 15++++++++++++---
Mtesting/web-platform/tests/tools/wptrunner/wptrunner/executors/protocol.py | 8+++++++-
4 files changed, 26 insertions(+), 6 deletions(-)

diff --git a/testing/web-platform/tests/resources/testdriver.js b/testing/web-platform/tests/resources/testdriver.js @@ -973,9 +973,12 @@ * @param {PermissionState} params.state - a `PermissionState * <https://w3c.github.io/permissions/#dom-permissionstate>`_ * value. - * @param {string} [params.origin] - an optional `origin` string to set the + * @param {string} [params.origin] - an optional top-level `origin` string to set the * permission for. If omitted, the permission is set for the * current window's origin. + * @param {string} [params.embeddedOrigin] - an optional embedded `origin` string to set the + * permission for. If omitted, the top-level `origin` is used as the + * embedded origin. * @returns {Promise} fulfilled after the permission is set, or rejected if setting * the permission fails. */ diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/asyncactions.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/asyncactions.py @@ -292,9 +292,11 @@ class BidiPermissionsSetPermissionAction: descriptor = payload['descriptor'] state = payload['state'] origin = payload['origin'] + embedded_origin = payload.get('embeddedOrigin') return await self.protocol.bidi_permissions.set_permission(descriptor, state, - origin) + origin, + embedded_origin) async_actions = [ diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py @@ -398,9 +398,18 @@ class WebDriverBidiPermissionsProtocolPart(BidiPermissionsProtocolPart): def setup(self): self.webdriver = self.parent.webdriver - async def set_permission(self, descriptor, state, origin): - return await self.webdriver.bidi_session.permissions.set_permission( - descriptor=descriptor, state=state, origin=origin) + async def set_permission( + self, + descriptor: Dict[str, Any], + state: str, + origin: str, + embedded_origin: Optional[str] = None, + ) -> Any: + params = {"descriptor": descriptor, "state": state, "origin": origin} + if embedded_origin is not None: + params["embeddedOrigin"] = embedded_origin + + return await self.webdriver.bidi_session.permissions.set_permission(**params) class WebDriverBidiWebExtensionsProtocolPart(WebExtensionsProtocolPart): def __init__(self, parent): diff --git a/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/protocol.py b/testing/web-platform/tests/tools/wptrunner/wptrunner/executors/protocol.py @@ -598,7 +598,13 @@ class BidiPermissionsProtocolPart(ProtocolPart): name = "bidi_permissions" @abstractmethod - async def set_permission(self, descriptor, state, origin): + async def set_permission( + self, + descriptor: Dict[str, Any], + state: str, + origin: str, + embedded_origin: Optional[str] = None, + ) -> Any: pass