diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
commit | 36d22d82aa202bb199967e9512281e9a53db42c9 (patch) | |
tree | 105e8c98ddea1c1e4784a60a5a6410fa416be2de /dom/tests/mochitest/chrome/test_geolocation.xhtml | |
parent | Initial commit. (diff) | |
download | firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.tar.xz firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.zip |
Adding upstream version 115.7.0esr.upstream/115.7.0esrupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r-- | dom/tests/mochitest/chrome/test_geolocation.xhtml | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/dom/tests/mochitest/chrome/test_geolocation.xhtml b/dom/tests/mochitest/chrome/test_geolocation.xhtml new file mode 100644 index 0000000000..482b36ea20 --- /dev/null +++ b/dom/tests/mochitest/chrome/test_geolocation.xhtml @@ -0,0 +1,54 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin" type="text/css"?> +<?xml-stylesheet href="chrome://mochikit/content/tests/SimpleTest/test.css" type="text/css"?> +<!-- + Test for Geolocation in chrome + --> +<window + id="sample-window" + width="400" + height="400" + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" +> + <script + src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js" + ></script> + + <script> + SimpleTest.waitForExplicitFinish(); + async function test() { + /** @type {Geolocation} */ + const geolocation = Cc["@mozilla.org/geolocation;1"].getService( + Ci.nsISupports + ); + try { + // Watch position + let watchId; + let position = await new Promise((resolve, reject) => { + watchId = geolocation.watchPosition(resolve, reject, { timeout: 0 }); + }); + ok(position, "watchPosition() callable from chrome"); + geolocation.clearWatch(watchId); + + // Get position + position = await new Promise((resolve, reject) => + geolocation.getCurrentPosition(resolve, reject) + ); + ok(position, "getCurrentPosition() callable from chrome"); + } catch (err) { + ok( + false, + "error occurred trying to get geolocation from chrome: " + err.message + ); + } finally { + SimpleTest.finish(); + } + } + </script> + + <body + xmlns="http://www.w3.org/1999/xhtml" + style="height: 300px; overflow: auto;" + onload="test()" + /> +</window> |