summaryrefslogtreecommitdiffstats
path: root/devtools/shared/worker/tests/browser/browser_worker-02.js
diff options
context:
space:
mode:
authorMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
committerMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
commit5f8de423f190bbb79a62f804151bc24824fa32d8 (patch)
tree10027f336435511475e392454359edea8e25895d /devtools/shared/worker/tests/browser/browser_worker-02.js
parent49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff)
downloadUXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip
Add m-esr52 at 52.6.0
Diffstat (limited to 'devtools/shared/worker/tests/browser/browser_worker-02.js')
-rw-r--r--devtools/shared/worker/tests/browser/browser_worker-02.js46
1 files changed, 46 insertions, 0 deletions
diff --git a/devtools/shared/worker/tests/browser/browser_worker-02.js b/devtools/shared/worker/tests/browser/browser_worker-02.js
new file mode 100644
index 000000000..e6a9a54cf
--- /dev/null
+++ b/devtools/shared/worker/tests/browser/browser_worker-02.js
@@ -0,0 +1,46 @@
+/* Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/ */
+
+// Tests errors are handled properly by the DevToolsWorker.
+
+const { DevToolsWorker } = require("devtools/shared/worker/worker");
+const WORKER_URL =
+ "resource://devtools/client/shared/widgets/GraphsWorker.js";
+
+add_task(function* () {
+ try {
+ let workerNotFound = new DevToolsWorker("resource://i/dont/exist.js");
+ ok(false, "Creating a DevToolsWorker with an invalid URL throws");
+ } catch (e) {
+ ok(true, "Creating a DevToolsWorker with an invalid URL throws");
+ }
+
+ let worker = new DevToolsWorker(WORKER_URL);
+ try {
+ // plotTimestampsGraph requires timestamp, interval an duration props on the object
+ // passed in so there should be an error thrown in the worker
+ let results = yield worker.performTask("plotTimestampsGraph", {});
+ ok(false, "DevToolsWorker returns a rejected promise when an error occurs in the worker");
+ } catch (e) {
+ ok(true, "DevToolsWorker returns a rejected promise when an error occurs in the worker");
+ }
+
+ try {
+ let results = yield worker.performTask("not a real task");
+ ok(false, "DevToolsWorker returns a rejected promise when task does not exist");
+ } catch (e) {
+ ok(true, "DevToolsWorker returns a rejected promise when task does not exist");
+ }
+
+ worker.destroy();
+ try {
+ let results = yield worker.performTask("plotTimestampsGraph", {
+ timestamps: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
+ interval: 1,
+ duration: 1
+ });
+ ok(false, "DevToolsWorker rejects when performing a task on a destroyed worker");
+ } catch (e) {
+ ok(true, "DevToolsWorker rejects when performing a task on a destroyed worker");
+ }
+});