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

Unified Diff: chrome/test/data/workers/worker_common.js

Issue 580007: Changed CreateWorker to coalesce any matching queued shared workers when a (Closed)
Patch Set: Now supports multiple queued instances of one shared worker. Created 10 years, 10 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
« no previous file with comments | « chrome/test/data/workers/worker_close.html ('k') | chrome/worker/worker_uitest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/test/data/workers/worker_common.js
diff --git a/chrome/test/data/workers/worker_common.js b/chrome/test/data/workers/worker_common.js
index 664da580b24eb15b88b6a76fbbd892fdde90ec84..675de0de6d1b8fb4b59bee4151e440f86e25e41f 100644
--- a/chrome/test/data/workers/worker_common.js
+++ b/chrome/test/data/workers/worker_common.js
@@ -1,19 +1,28 @@
+// Track the number of clients for this worker - tests can use this to ensure
+// that shared workers are actually shared, not distinct.
+var num_clients = 0;
+
if (!self.postMessage) {
// This is a shared worker - mimic dedicated worker APIs
onconnect = function(event) {
+ num_clients++;
event.ports[0].onmessage = function(e) {
+ self.postMessage = function(msg) {
+ event.ports[0].postMessage(msg);
+ };
self.onmessage(e);
};
- self.postMessage = function(msg, ports) {
- event.ports[0].postMessage(msg, ports);
- };
};
+} else {
+ num_clients++;
}
onmessage = function(evt) {
if (evt.data == "ping")
postMessage("pong");
else if (evt.data == "auth")
importScripts("/auth-basic");
+ else if (evt.data == "close")
+ close();
else if (/eval.+/.test(evt.data)) {
try {
postMessage(eval(evt.data.substr(5)));
« no previous file with comments | « chrome/test/data/workers/worker_close.html ('k') | chrome/worker/worker_uitest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698