summaryrefslogtreecommitdiffstats
path: root/devtools/client/framework/test/browser_about-devtools-toolbox_load.js
diff options
context:
space:
mode:
Diffstat (limited to 'devtools/client/framework/test/browser_about-devtools-toolbox_load.js')
-rw-r--r--devtools/client/framework/test/browser_about-devtools-toolbox_load.js31
1 files changed, 31 insertions, 0 deletions
diff --git a/devtools/client/framework/test/browser_about-devtools-toolbox_load.js b/devtools/client/framework/test/browser_about-devtools-toolbox_load.js
new file mode 100644
index 0000000000..f29a5b095b
--- /dev/null
+++ b/devtools/client/framework/test/browser_about-devtools-toolbox_load.js
@@ -0,0 +1,31 @@
+/* Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/ */
+
+"use strict";
+
+/**
+ * Test that about:devtools-toolbox shows error an page when opened with invalid
+ * paramters
+ */
+add_task(async function() {
+ // test that error is shown when missing `type` param
+ let { document, tab } = await openAboutToolbox({ invalid: "invalid" });
+ await assertErrorIsShown(document);
+ await removeTab(tab);
+ // test that error is shown if `id` is not provided
+ ({ document, tab } = await openAboutToolbox({ type: "tab" }));
+ await assertErrorIsShown(document);
+ await removeTab(tab);
+ // test that error is shown if `remoteId` refers to an unexisting target
+ ({ document, tab } = await openAboutToolbox({
+ type: "tab",
+ remoteId: "13371337",
+ }));
+ await assertErrorIsShown(document);
+ await removeTab(tab);
+
+ async function assertErrorIsShown(doc) {
+ await waitUntil(() => doc.querySelector(".qa-error-page"));
+ ok(doc.querySelector(".qa-error-page"), "Error page is rendered");
+ }
+});