Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(205)

Unified Diff: test/mjsunit/d8-worker.js

Issue 1218553004: Change d8 Worker API so it takes a string instead of a function. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: fix 504729 Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: test/mjsunit/d8-worker.js
diff --git a/test/mjsunit/d8-worker.js b/test/mjsunit/d8-worker.js
index ef02ca5b405815ca5252886b4cfe46d4ead4dfbc..e10ffa1a02110b9a7ad8e6b250f6ee356d2cb776 100644
--- a/test/mjsunit/d8-worker.js
+++ b/test/mjsunit/d8-worker.js
@@ -29,65 +29,64 @@
// spawns a new OS thread and isolate, and runs it concurrently with the
// current running thread.
-function f() {
- postMessage("Starting worker");
- // Set a global variable; should not be visible outside of the worker's
- // context.
- foo = 100;
-
- var c = 0;
- onmessage = function(m) {
- switch (c++) {
- case 0:
- if (m !== undefined) throw new Error("undefined");
- break;
- case 1:
- if (m !== null) throw new Error("null");
- break;
- case 2:
- if (m !== true) throw new Error("true");
- break;
- case 3:
- if (m !== false) throw new Error("false");
- break;
- case 4:
- if (m !== 100) throw new Error("Number");
- break;
- case 5:
- if (m !== "hi") throw new Error("String");
- break;
- case 6:
- if (JSON.stringify(m) !== '[4,true,"bye"]') throw new Error("Array");
- break;
- case 7:
- if (JSON.stringify(m) !== '{"a":1,"b":2.5,"c":"three"}')
- throw new Error("Object");
- break;
- case 8:
- var ab = m;
- var t = new Uint32Array(ab);
- if (ab.byteLength !== 16)
- throw new Error("ArrayBuffer clone byteLength");
- for (var i = 0; i < 4; ++i)
- if (t[i] !== i)
- throw new Error("ArrayBuffer clone value " + i);
- break;
- case 9:
- var ab = m;
- var t = new Uint32Array(ab);
- if (ab.byteLength !== 32)
- throw new Error("ArrayBuffer transfer byteLength");
- for (var i = 0; i < 8; ++i)
- if (t[i] !== i)
- throw new Error("ArrayBuffer transfer value " + i);
- break;
- }
-
- if (c == 10) {
- postMessage("DONE");
- }
- }
-}
+var workerScript =
+ "postMessage('Starting worker');\n" +
Jarin 2015/07/01 07:35:44 You might consider using the new shiny template st
binji 2015/07/01 16:13:53 Ah, I didn't know about this. Thanks!
+// Set a global variable; should not be visible outside of the worker's
+// context.
+ "foo = 100;\n" +
+ "var c = 0;\n" +
+ "onmessage = function(m) {\n" +
+ " switch (c++) {\n" +
+ " case 0:\n" +
+ " if (m !== undefined) throw new Error('undefined');\n" +
+ " break;\n" +
+ " case 1:\n" +
+ " if (m !== null) throw new Error('null');\n" +
+ " break;\n" +
+ " case 2:\n" +
+ " if (m !== true) throw new Error('true');\n" +
+ " break;\n" +
+ " case 3:\n" +
+ " if (m !== false) throw new Error('false');\n" +
+ " break;\n" +
+ " case 4:\n" +
+ " if (m !== 100) throw new Error('Number');\n" +
+ " break;\n" +
+ " case 5:\n" +
+ " if (m !== 'hi') throw new Error('String');\n" +
+ " break;\n" +
+ " case 6:\n" +
+ " if (JSON.stringify(m) !== '[4,true,\"bye\"]') {\n" +
+ " throw new Error('Array');\n" +
+ " }\n" +
+ " break;\n" +
+ " case 7:\n" +
+ " if (JSON.stringify(m) !== \"{'a':1,'b':2.5,'c':'three'}\")\n" +
+ " throw new Error('Object');\n" +
+ " break;\n" +
+ " case 8:\n" +
+ " var ab = m;\n" +
+ " var t = new Uint32Array(ab);\n" +
+ " if (ab.byteLength !== 16)\n" +
+ " throw new Error('ArrayBuffer clone byteLength');\n" +
+ " for (var i = 0; i < 4; ++i)\n" +
+ " if (t[i] !== i)\n" +
+ " throw new Error('ArrayBuffer clone value ' + i);\n" +
+ " break;\n" +
+ " case 9:\n" +
+ " var ab = m;\n" +
+ " var t = new Uint32Array(ab);\n" +
+ " if (ab.byteLength !== 32)\n" +
+ " throw new Error('ArrayBuffer transfer byteLength');\n" +
+ " for (var i = 0; i < 8; ++i)\n" +
+ " if (t[i] !== i)\n" +
+ " throw new Error('ArrayBuffer transfer value ' + i);\n" +
+ " break;\n" +
+ " }\n" +
+ " if (c == 10) {\n" +
+ " postMessage('DONE');\n" +
+ " }\n" +
+ "}\n";
if (this.Worker) {
@@ -99,7 +98,7 @@ if (this.Worker) {
return ab;
}
- var w = new Worker(f);
+ var w = new Worker(workerScript);
assertEquals("Starting worker", w.getMessage());
@@ -132,8 +131,7 @@ if (this.Worker) {
// Make sure that the main thread doesn't block forever in getMessage() if
// the worker dies without posting a message.
- function f2() {}
- var w2 = new Worker(f2);
+ var w2 = new Worker('');
var msg = w2.getMessage();
assertEquals(undefined, msg);
}

Powered by Google App Engine
This is Rietveld 408576698