Bug 1164483 - move worker helpers from frontend of devtools to backend r=jsantell

--HG--
rename : browser/devtools/shared/test/browser_devtools-worker-01.js => toolkit/devtools/shared/tests/browser/browser_worker-01.js
rename : browser/devtools/shared/test/browser_devtools-worker-02.js => toolkit/devtools/shared/tests/browser/browser_worker-02.js
rename : browser/devtools/shared/test/browser_devtools-worker-03.js => toolkit/devtools/shared/tests/browser/browser_worker-03.js
rename : browser/devtools/shared/worker-helper.js => toolkit/devtools/shared/worker-helper.js
rename : browser/devtools/shared/worker.js => toolkit/devtools/shared/worker.js
This commit is contained in:
James Long 2015-05-13 15:52:23 -04:00
Родитель d76c64571b
Коммит 6a69f31f83
12 изменённых файлов: 22 добавлений и 21 удалений

Просмотреть файл

@ -60,9 +60,7 @@ EXTRA_JS_MODULES.devtools.shared += [
'telemetry.js', 'telemetry.js',
'theme-switching.js', 'theme-switching.js',
'theme.js', 'theme.js',
'undo.js', 'undo.js'
'worker-helper.js',
'worker.js',
] ]
EXTRA_JS_MODULES.devtools.shared.widgets += [ EXTRA_JS_MODULES.devtools.shared.widgets += [

Просмотреть файл

@ -24,9 +24,6 @@ support-files =
[browser_cubic-bezier-04.js] [browser_cubic-bezier-04.js]
[browser_cubic-bezier-05.js] [browser_cubic-bezier-05.js]
[browser_cubic-bezier-06.js] [browser_cubic-bezier-06.js]
[browser_devtools-worker-01.js]
[browser_devtools-worker-02.js]
[browser_devtools-worker-03.js]
[browser_filter-editor-01.js] [browser_filter-editor-01.js]
[browser_filter-editor-02.js] [browser_filter-editor-02.js]
[browser_filter-editor-03.js] [browser_filter-editor-03.js]

Просмотреть файл

@ -9,7 +9,7 @@ Cu.import("resource:///modules/devtools/ViewHelpers.jsm");
const promise = Cu.import("resource://gre/modules/Promise.jsm", {}).Promise; const promise = Cu.import("resource://gre/modules/Promise.jsm", {}).Promise;
const {Task} = Cu.import("resource://gre/modules/Task.jsm", {}); const {Task} = Cu.import("resource://gre/modules/Task.jsm", {});
const {EventEmitter} = Cu.import("resource://gre/modules/devtools/event-emitter.js", {}); const {EventEmitter} = Cu.import("resource://gre/modules/devtools/event-emitter.js", {});
const {DevToolsWorker} = Cu.import("resource:///modules/devtools/shared/worker.js", {}); const {DevToolsWorker} = Cu.import("resource://gre/modules/devtools/shared/worker.js", {});
this.EXPORTED_SYMBOLS = [ this.EXPORTED_SYMBOLS = [
"GraphCursor", "GraphCursor",

Просмотреть файл

@ -4,10 +4,10 @@
"use strict"; "use strict";
/** /**
* Import `createTask` to communicate with `devtools/shared/worker`. * Import `createTask` to communicate with `devtools/toolkit/shared/worker`.
*/ */
importScripts("resource://gre/modules/workers/require.js"); importScripts("resource://gre/modules/workers/require.js");
const { createTask } = require("resource:///modules/devtools/shared/worker-helper"); const { createTask } = require("resource://gre/modules/devtools/shared/worker-helper");
/** /**
* @see LineGraphWidget.prototype.setDataFromTimestamps in Graphs.jsm * @see LineGraphWidget.prototype.setDataFromTimestamps in Graphs.jsm

Просмотреть файл

@ -20,7 +20,7 @@ DIRS += [
'styleinspector', 'styleinspector',
'tern', 'tern',
'transport', 'transport',
'webconsole', 'webconsole'
] ]
MOCHITEST_CHROME_MANIFESTS += ['tests/mochitest/chrome.ini'] MOCHITEST_CHROME_MANIFESTS += ['tests/mochitest/chrome.ini']

Просмотреть файл

@ -7,5 +7,7 @@
BROWSER_CHROME_MANIFESTS += ['tests/browser/browser.ini'] BROWSER_CHROME_MANIFESTS += ['tests/browser/browser.ini']
EXTRA_JS_MODULES.devtools.shared += [ EXTRA_JS_MODULES.devtools.shared += [
'async-storage.js' 'async-storage.js',
'worker-helper.js',
'worker.js'
] ]

Просмотреть файл

@ -5,3 +5,6 @@ support-files =
../../../server/tests/browser/head.js ../../../server/tests/browser/head.js
[browser_async_storage.js] [browser_async_storage.js]
[browser_worker-01.js]
[browser_worker-02.js]
[browser_worker-03.js]

Просмотреть файл

@ -19,8 +19,9 @@ const DURATION = 1000;
add_task(function*() { add_task(function*() {
// Test both CJS and JSM versions // Test both CJS and JSM versions
yield testWorker("JSM", () => Cu.import("resource:///modules/devtools/shared/worker.js", {}));
yield testWorker("CommonJS", () => devtools.require("devtools/shared/worker")); yield testWorker("JSM", () => Cu.import("resource://gre/modules/devtools/shared/worker.js", {}));
yield testWorker("CommonJS", () => require("devtools/toolkit/shared/worker"));
}); });
function *testWorker (context, workerFactory) { function *testWorker (context, workerFactory) {
@ -39,6 +40,5 @@ function *testWorker (context, workerFactory) {
is((yield fn(5)), 25, `workerify works in ${context}`); is((yield fn(5)), 25, `workerify works in ${context}`);
fn.destroy(); fn.destroy();
worker.destroy(); worker.destroy();
} }

Просмотреть файл

@ -3,7 +3,8 @@
// Tests errors are handled properly by the DevToolsWorker. // Tests errors are handled properly by the DevToolsWorker.
const { DevToolsWorker } = devtools.require("devtools/shared/worker"); const { devtools } = Cu.import("resource://gre/modules/devtools/Loader.jsm", {});
const { DevToolsWorker } = devtools.require("devtools/toolkit/shared/worker");
const WORKER_URL = "resource:///modules/devtools/GraphsWorker.js"; const WORKER_URL = "resource:///modules/devtools/GraphsWorker.js";
add_task(function*() { add_task(function*() {

Просмотреть файл

@ -6,7 +6,7 @@
// //
// And tests `workerify` by doing so. // And tests `workerify` by doing so.
const { DevToolsWorker, workerify } = devtools.require("devtools/shared/worker"); const { DevToolsWorker, workerify } = require("devtools/toolkit/shared/worker");
function square (x) { function square (x) {
return x * x; return x * x;
} }

Просмотреть файл

@ -6,7 +6,7 @@
/** /**
* This file is to only be included by ChromeWorkers. This exposes * This file is to only be included by ChromeWorkers. This exposes
* a `createTask` function to workers to register tasks for communication * a `createTask` function to workers to register tasks for communication
* back to `devtools/shared/worker`. * back to `devtools/toolkit/shared/worker`.
* *
* Tasks can be send their responses via a return value, either a primitive * Tasks can be send their responses via a return value, either a primitive
* or a promise. * or a promise.

Просмотреть файл

@ -23,7 +23,7 @@ let MESSAGE_COUNTER = 0;
/** /**
* Creates a wrapper around a ChromeWorker, providing easy * Creates a wrapper around a ChromeWorker, providing easy
* communication to offload demanding tasks. The corresponding URL * communication to offload demanding tasks. The corresponding URL
* must implement the interface provided by `devtools/shared/worker-helper`. * must implement the interface provided by `devtools/toolkit/shared/worker-helper`.
* *
* @see `./browser/devtools/shared/widgets/GraphsWorker.js` * @see `./browser/devtools/shared/widgets/GraphsWorker.js`
* *
@ -81,7 +81,7 @@ DevToolsWorker.prototype.destroy = function DevToolsWorkerDestroy () {
/** /**
* Takes a function and returns a Worker-wrapped version of the same function. * Takes a function and returns a Worker-wrapped version of the same function.
* Returns a promise upon resolution. * Returns a promise upon resolution.
* @see `./browser/devtools/shared/test/browser_devtools-worker-03.js * @see `./toolkit/devtools/shared/tests/browser/browser_devtools-worker-03.js
* *
* * * * ! ! ! This should only be used for tests or A/B testing performance ! ! ! * * * * * * * * * * ! ! ! This should only be used for tests or A/B testing performance ! ! ! * * * * * *
* *
@ -126,7 +126,7 @@ exports.workerify = workerify;
*/ */
function createWorkerString (fn) { function createWorkerString (fn) {
return `importScripts("resource://gre/modules/workers/require.js"); return `importScripts("resource://gre/modules/workers/require.js");
const { createTask } = require("resource:///modules/devtools/shared/worker-helper"); const { createTask } = require("resource://gre/modules/devtools/shared/worker-helper");
createTask(self, "workerifiedTask", ${fn.toString()}); createTask(self, "workerifiedTask", ${fn.toString()});
`; `;
} }