summaryrefslogtreecommitdiffstats
path: root/mobile/android/components/extensions/test/mochitest/test_ext_webNavigation_onCommitted.html
diff options
context:
space:
mode:
Diffstat (limited to 'mobile/android/components/extensions/test/mochitest/test_ext_webNavigation_onCommitted.html')
-rw-r--r--mobile/android/components/extensions/test/mochitest/test_ext_webNavigation_onCommitted.html50
1 files changed, 50 insertions, 0 deletions
diff --git a/mobile/android/components/extensions/test/mochitest/test_ext_webNavigation_onCommitted.html b/mobile/android/components/extensions/test/mochitest/test_ext_webNavigation_onCommitted.html
new file mode 100644
index 0000000000..33f178492d
--- /dev/null
+++ b/mobile/android/components/extensions/test/mochitest/test_ext_webNavigation_onCommitted.html
@@ -0,0 +1,50 @@
+<!DOCTYPE HTML>
+<html>
+<head>
+ <meta charset="utf-8">
+ <title>WebNavigation onCommitted Test</title>
+ <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
+ <script type="text/javascript" src="/tests/SimpleTest/ExtensionTestUtils.js"></script>
+ <script type="text/javascript" src="head.js"></script>
+ <link rel="stylesheet" href="/tests/SimpleTest/test.css"/>
+</head>
+<body>
+
+<script type="text/javascript">
+"use strict";
+
+add_task(async function() {
+ const extension = ExtensionTestUtils.loadExtension({
+ manifest: {
+ permissions: ["webNavigation", "tabs"],
+ },
+ async background() {
+ const url = "http://mochi.test:8888/";
+ const [tab, tabDetails] = await Promise.all([
+ browser.tabs.create({url}),
+ new Promise(resolve => {
+ browser.webNavigation.onCommitted.addListener(details => {
+ if (details.url === "about:blank") {
+ // skip initial about:blank
+ return;
+ }
+ resolve(details);
+ });
+ }),
+ ]);
+
+ browser.test.assertEq(url, tabDetails.url, "webNavigation.onCommitted detects correct url");
+ browser.test.assertEq(tab.id, tabDetails.tabId, "webNavigation.onCommitted fire for proper tabId");
+ await browser.tabs.remove(tab.id);
+ browser.test.notifyPass("webNavigation.onCommitted");
+ },
+ });
+
+ await extension.startup();
+ await extension.awaitFinish("webNavigation.onCommitted");
+ await extension.unload();
+});
+</script>
+
+</body>
+</html>