/** * Any copyright is dedicated to the Public Domain. * http://creativecommons.org/publicdomain/zero/1.0/ */ msg = null; var errors = 5; onerror = function(event) { ok(true, msg); if (!--errors) SimpleTest.finish(); } msg = "No Eval allowed"; worker = new Worker("csp_worker.js"); worker.postMessage(0); worker.onmessage = function(event) { ok(false, "Eval succeeded!"); } msg = "No Eval allowed 2"; worker = new Worker("csp_worker.js"); worker.postMessage(4); worker.onmessage = function(event) { ok(false, "Eval succeeded!"); } msg = "ImportScripts data:"; worker = new Worker("csp_worker.js"); worker.postMessage(-1); worker.onmessage = function(event) { ok(false, "Eval succeeded!"); } msg = "ImportScripts javascript:"; worker = new Worker("csp_worker.js"); worker.postMessage(-2); worker.onmessage = function(event) { ok(false, "Eval succeeded!"); } msg = "Loading data:something"; try { worker = new Worker("data:application/javascript;base64,ZHVtcCgnaGVsbG8gd29ybGQnKQo="); ok(false, "Should have thrown!"); } catch (e) { ok(true, "Threw as expected."); } worker = new Worker("javascript:dump(123);"); SimpleTest.waitForExplicitFinish();