mirror of
https://github.com/classilla/tenfourfox.git
synced 2024-10-22 02:25:05 +00:00
47 lines
1.7 KiB
JavaScript
47 lines
1.7 KiB
JavaScript
|
/* 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");
|
||
|
};
|
||
|
});
|