Files
sousa-gecko/testing/web-platform/tests/web-extensions/resources/runtime/background.js
T
Justin Lulejian 2f9cf96a20 Bug 2042840 [wpt PR 60189] - [Extension][WPT] Add more error cases for browser.runtime.getURL., a=testonly
Automatic update from web-platform-tests
[Extension][WPT] Add more error cases for browser.runtime.getURL.

This commit expands the test coverage for browser.runtime.getURL by
adding checks for invalid argument types such as boolean, object, and
array.

Bug: 493945852
Change-Id: I61b6de1fa8b85b4f4f98fc4fddecc086143a54da
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7876148
Reviewed-by: Tim <tjudkins@chromium.org>
Commit-Queue: Justin Lulejian <jlulejian@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1636521}

--

wpt-commits: c15f6701f2f69b16685073f132ba6357984097a7
wpt-pr: 60189
2026-05-29 16:00:13 +00:00

34 lines
2.1 KiB
JavaScript

browser.test.runTests([
function browserRuntimeGetURLErrorCases() {
browser.test.assertThrows(() => browser.runtime.getURL())
browser.test.assertThrows(() => browser.runtime.getURL(true))
browser.test.assertThrows(() => browser.runtime.getURL(null))
browser.test.assertThrows(() => browser.runtime.getURL(undefined))
browser.test.assertThrows(() => browser.runtime.getURL(42))
browser.test.assertThrows(() => browser.runtime.getURL(/test/))
browser.test.assertThrows(() => browser.runtime.getURL({}))
browser.test.assertThrows(() => browser.runtime.getURL(["test.js"]))
},
function browserRuntimeGetURLNormalCases() {
browser.test.assertEq(typeof browser.runtime.getURL(""), "string")
browser.test.assertEq(new URL(browser.runtime.getURL("")).pathname, "/")
browser.test.assertEq(new URL(browser.runtime.getURL("test.js")).pathname, "/test.js")
browser.test.assertEq(new URL(browser.runtime.getURL("/test.js")).pathname, "/test.js")
browser.test.assertEq(new URL(browser.runtime.getURL("../../test.js")).pathname, "/test.js")
browser.test.assertEq(new URL(browser.runtime.getURL("./test.js")).pathname, "/test.js")
browser.test.assertEq(new URL(browser.runtime.getURL("././/example")).pathname, "//example")
browser.test.assertEq(new URL(browser.runtime.getURL("../../example/..//test/")).pathname, "//test/")
browser.test.assertEq(new URL(browser.runtime.getURL(".")).pathname, "/")
browser.test.assertEq(new URL(browser.runtime.getURL("..//../")).pathname, "/")
browser.test.assertEq(new URL(browser.runtime.getURL(".././..")).pathname, "/")
browser.test.assertEq(new URL(browser.runtime.getURL("/.././.")).pathname, "/")
},
async function browserRuntimeGetPlatformInfo() {
const platformInfo = await browser.runtime.getPlatformInfo()
browser.test.assertEq(typeof platformInfo, "object")
browser.test.assertEq(typeof platformInfo.os, "string")
browser.test.assertEq(typeof platformInfo.arch, "string")
}
])