Update web-platform-tests to revision 097043b336e46876e281ddec3bb014fe9c480128

This commit is contained in:
WPT Sync Bot 2019-08-03 10:25:42 +00:00
parent ecd32570c0
commit b68253eac0
405 changed files with 9164 additions and 3050 deletions

View file

@ -1,9 +1,3 @@
<!--
onconnect = function(e) {
e.ports[0].postMessage([e.data === '', e instanceof MessageEvent, e.ports.length == 1]);
};
/*
-->
<!doctype html>
<title>connect event</title>
<script src="/resources/testharness.js"></script>
@ -11,7 +5,7 @@ onconnect = function(e) {
<div id="log"></div>
<script>
(async_test()).step(function() {
var worker = new SharedWorker('#');
var worker = new SharedWorker('connect-event.js');
worker.port.addEventListener('message', this.step_func(function(e) {
assert_true(e.data[0], "e.data === ''");
assert_true(e.data[1], "e instanceof MessageEvent");
@ -20,7 +14,4 @@ onconnect = function(e) {
}), false);
worker.port.start();
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,3 @@
onconnect = function(e) {
e.ports[0].postMessage([e.data === '', e instanceof MessageEvent, e.ports.length == 1]);
};

View file

@ -1,6 +1,3 @@
<!--
/*
-->
<!doctype html>
<title>creating a dummy shared worker with name "foo"</title>
<link rel=help href="http://www.whatwg.org/html/#dom-sharedworker">
@ -9,9 +6,6 @@
<div id="log"></div>
<script>
test(function() {
var worker = new SharedWorker('#', 'foo');
var worker = new SharedWorker('empty.js', 'foo');
});
</script>
<!--
*/
//-->

View file

@ -1,6 +1,3 @@
<!--
/*
-->
<!doctype html>
<title>creating a dummy shared worker</title>
<link rel=help href="http://www.whatwg.org/html/#dom-sharedworker">
@ -9,9 +6,6 @@
<div id="log"></div>
<script>
test(function() {
var worker = new SharedWorker('#');
var worker = new SharedWorker('dummy-shared-worker.js');
});
</script>
<!--
*/
//-->
</script>

View file

@ -1,6 +1,3 @@
<!--
/*
-->
<!doctype html>
<title>creating a dummy shared worker with explicit name ""</title>
<link rel=help href="http://www.whatwg.org/html/#dom-sharedworker">
@ -9,9 +6,6 @@
<div id="log"></div>
<script>
test(function() {
var worker = new SharedWorker('#', '');
var worker = new SharedWorker('empty.js', '');
});
</script>
<!--
*/
//-->

View file

@ -1,15 +1,3 @@
<!--
var expected = 'self location close onerror importScripts navigator addEventListener removeEventListener dispatchEvent name onconnect setTimeout clearTimeout setInterval clearInterval'.split(' ');
var log = '';
for (var i = 0; i < expected.length; ++i) {
if (!(expected[i] in self))
log += expected[i] + ' did not exist\n';
}
onconnect = function(e) {
e.ports[0].postMessage(log);
};
/*
-->
<!doctype html>
<title>members of SharedWorkerGlobalScope</title>
<script src="/resources/testharness.js"></script>
@ -17,18 +5,11 @@ onconnect = function(e) {
<div id="log"></div>
<script>
(async_test()).step(function() {
var worker = new SharedWorker('#');
var worker = new SharedWorker('global-members.js');
worker.port.addEventListener('message', this.step_func(function(e) {
assert_equals(e.data, '');
this.done();
}), false);
worker.port.start();
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,9 @@
var expected = 'self location close onerror importScripts navigator addEventListener removeEventListener dispatchEvent name onconnect setTimeout clearTimeout setInterval clearInterval'.split(' ');
var log = '';
for (var i = 0; i < expected.length; ++i) {
if (!(expected[i] in self))
log += expected[i] + ' did not exist\n';
}
onconnect = function(e) {
e.ports[0].postMessage(log);
};

View file

@ -1,19 +1,3 @@
<!--
var prt;
function handleCall(e) {
var log = [];
for (var i = 0; i < e.data.length; ++i) {
if (!(e.data[i] in self))
log.push(e.data[i]);
}
prt.postMessage('These were missing: '+log.join(', '));
}
onconnect = function(e) {
prt = e.ports[0];
prt.onmessage = handleCall;
};
/*
-->
<!doctype html>
<title>expected interface objects/constructors</title>
<script src="/resources/testharness.js"></script>
@ -27,7 +11,7 @@ onconnect = function(e) {
if (expected[i] in window)
supported.push(expected[i]);
}
var worker = new SharedWorker('#');
var worker = new SharedWorker('interface-objects.js');
worker.port.start();
worker.port.postMessage(supported);
worker.port.addEventListener('message', this.step_func(function(e) {
@ -35,7 +19,4 @@ onconnect = function(e) {
this.done();
}), false);
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,13 @@
var prt;
function handleCall(e) {
var log = [];
for (var i = 0; i < e.data.length; ++i) {
if (!(e.data[i] in self))
log.push(e.data[i]);
}
prt.postMessage('These were missing: '+log.join(', '));
}
onconnect = function(e) {
prt = e.ports[0];
prt.onmessage = handleCall;
};

View file

@ -1,9 +1,3 @@
<!--
onconnect = function(e) {
e.ports[0].postMessage(self.name);
}
/*
-->
<!doctype html>
<title>self.name</title>
<script src="/resources/testharness.js"></script>
@ -11,7 +5,7 @@ onconnect = function(e) {
<div id="log"></div>
<script>
(async_test()).step(function() {
var worker = new SharedWorker('#', 'hello');
var worker = new SharedWorker('name.js', 'hello');
worker.port.addEventListener('message', this.step_func(function(e) {
assert_equals(e.data, 'hello');
this.done();
@ -19,6 +13,3 @@ onconnect = function(e) {
worker.port.start();
});
</script>
<!--
*/
//-->

View file

@ -0,0 +1,3 @@
onconnect = function(e) {
e.ports[0].postMessage(self.name);
}

View file

@ -1,9 +1,3 @@
<!--
onconnect = function(e) {
e.ports[0].postMessage(true);
}
/*
-->
<!doctype html>
<title>worker.port.onmessage</title>
<script src="/resources/testharness.js"></script>
@ -11,13 +5,10 @@ onconnect = function(e) {
<div id="log"></div>
<script>
(async_test()).step(function() {
var worker = new SharedWorker('#', '');
var worker = new SharedWorker('port-onmessage.js', '');
worker.port.onmessage = this.step_func(function(e) {
assert_true(e.data);
this.done();
});
});
</script>
<!--
*/
//-->

View file

@ -0,0 +1,3 @@
onconnect = function(e) {
e.ports[0].postMessage(true);
}

View file

@ -1,6 +1,3 @@
<!--
/*
-->
<!doctype html>
<title>worker.port</title>
<link rel=help href="http://www.whatwg.org/html/#sharedworker">
@ -10,7 +7,7 @@
<div id="log"></div>
<script>
test(function() {
var worker = new SharedWorker('#', '');
var worker = new SharedWorker('empty.js', '');
assert_true('port' in worker, "port");
assert_true('postMessage' in worker.port, "postMessage");
assert_true('start' in worker.port, "start");
@ -21,6 +18,3 @@ test(function() {
assert_true('dispatchEvent' in worker.port, "dispatchEvent");
});
</script>
<!--
*/
//-->

View file

@ -1,6 +1,3 @@
<!--
/*
-->
<!doctype html>
<title>setting worker.port</title>
<link rel=help href="http://www.whatwg.org/html/#sharedworker">
@ -10,12 +7,9 @@
<div id="log"></div>
<script>
test(function() {
var worker = new SharedWorker('#', '');
var worker = new SharedWorker('empty.js', '');
var x = worker.port;
worker.port = 1;
assert_equals(worker.port, x);
});
</script>
<!--
*/
//-->

View file

@ -1,15 +1,3 @@
<!--
var unexpected = 'open print stop getComputedStyle getSelection releaseEvents captureEvents alert confirm prompt addEventStream removeEventStream back forward attachEvent detachEvent navigate DOMParser XMLSerializer XPathEvaluator XSLTProcessor opera Image Option frames Audio SVGUnitTypes SVGZoomAndPan java netscape sun Packages ByteArray closed defaultStatus document event frameElement history innerHeight innerWidth opener outerHeight outerWidth pageXOffset pageYOffset parent screen screenLeft screenTop screenX screenY status top window length'.split(' '); // iterated window in opera and removed expected ones
var log = '';
for (var i = 0; i < unexpected.length; ++i) {
if (unexpected[i] in self)
log += unexpected[i] + ' ';
}
onconnect = function(e) {
e.ports[0].postMessage(log);
};
/*
-->
<!doctype html>
<title>unexpected members/interface objects/constructors</title>
<script src="/resources/testharness.js"></script>
@ -17,14 +5,11 @@ onconnect = function(e) {
<div id="log"></div>
<script>
(async_test()).step(function() {
var worker = new SharedWorker('#');
var worker = new SharedWorker('unexpected-global-properties.js');
worker.port.addEventListener('message', this.step_func(function(e) {
assert_equals(e.data, '');
this.done();
}), false);
worker.port.start();
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,9 @@
var unexpected = 'open print stop getComputedStyle getSelection releaseEvents captureEvents alert confirm prompt addEventStream removeEventStream back forward attachEvent detachEvent navigate DOMParser XMLSerializer XPathEvaluator XSLTProcessor opera Image Option frames Audio SVGUnitTypes SVGZoomAndPan java netscape sun Packages ByteArray closed defaultStatus document event frameElement history innerHeight innerWidth opener outerHeight outerWidth pageXOffset pageYOffset parent screen screenLeft screenTop screenX screenY status top window length'.split(' '); // iterated window in opera and removed expected ones
var log = '';
for (var i = 0; i < unexpected.length; ++i) {
if (unexpected[i] in self)
log += unexpected[i] + ' ';
}
onconnect = function(e) {
e.ports[0].postMessage(log);
};

View file

@ -1,11 +1,3 @@
<!--
for (;) // should cause onerror to be invoked, but onerror is null, so
// the error is "not handled". should fire an ErrorEvent on the
// worker.
break;
postMessage(1); // shouldn't do anything since the script doesn't compile
/*
-->
<!doctype html>
<title>AbstractWorker.onerror</title>
<link rel=help href="https://html.spec.whatwg.org/multipage/#runtime-script-errors-2">
@ -17,14 +9,14 @@ postMessage(1); // shouldn't do anything since the script doesn't compile
<script>
setup({allow_uncaught_exception:true});
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('AbstractWorker.onerror.js');
var error;
worker.onerror = this.step_func(function(a, b, c) {
error = a;
assert_equals('' + a, '[object ErrorEvent]');
assert_true("message" in a, 'ErrorEvent.message');
assert_equals(typeof a.message, "string", 'ErrorEvent.message');
assert_equals(a.filename, document.URL + '#', 'ErrorEvent.filename');
assert_equals(a.filename, document.URL.replace('.html', '.js'), 'ErrorEvent.filename');
assert_true("lineno" in a, 'ErrorEvent.lineno');
assert_equals(typeof a.lineno, "number", 'ErrorEvent.lineno');
assert_equals(b, undefined, 'unexpected second argument to onerror');
@ -42,7 +34,4 @@ async_test(function() {
assert_equals(f, undefined, 'unexpected sixth argument to onerror');
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,5 @@
for (;) // should cause onerror to be invoked, but onerror is null, so
// the error is "not handled". should fire an ErrorEvent on the
// worker.
break;
postMessage(1); // shouldn't do anything since the script doesn't compile

View file

@ -1,10 +1,3 @@
<!--
(function f() {
postMessage(1);
setTimeout(f, 0);
})();
/*
-->
<!doctype html>
<title>terminate()</title>
<link rel=help href="http://www.whatwg.org/html/#dom-worker-terminate">
@ -14,7 +7,7 @@
<script>
var t = async_test();
t.step(function() {
var worker = new Worker('#');
var worker = new Worker('terminate.js');
var i = 0;
var expected;
@ -38,7 +31,4 @@ t.step(function() {
}), 100);
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,4 @@
(function f() {
postMessage(1);
setTimeout(f, 0);
})();

View file

@ -1,9 +1,3 @@
<!--
onmessage = function(e) {
postMessage(e.ports instanceof Array && e.ports.length === 0);
}
/*
-->
<!doctype html>
<title>e.ports in dedicated worker</title>
<script src="/resources/testharness.js"></script>
@ -11,15 +5,11 @@ onmessage = function(e) {
<div id="log"></div>
<script>
(async_test()).step(function() {
var worker = new Worker('#');
var worker = new Worker('event-ports-dedicated.js');
worker.postMessage(1);
worker.onmessage = this.step_func(function(e) {
assert_true(e.data);
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,3 @@
onmessage = function(e) {
postMessage(e.ports instanceof Array && e.ports.length === 0);
}

View file

@ -1,17 +1,3 @@
<!--
onmessage = function(e) {
function processPixels(imagedata) {
var pixeldata = imagedata.data;
for (var i = 0; i < pixeldata.length; i = i+4) {
pixeldata[i] = 128;
}
postMessage(imagedata);
}
processPixels(e.data[0]);
}
/*
-->
<!doctype html>
<title>posting an imagedata (from a cloned canvas) in an array</title>
<script src="/resources/testharness.js"></script>
@ -19,7 +5,7 @@ onmessage = function(e) {
<div id="log"></div>
<script>
(async_test()).step(function() {
var worker = new Worker('#');
var worker = new Worker('imagedata-cloned-canvas-in-array.js');
var canvas = document.createElement('canvas');
var clone = canvas.cloneNode(true);
var ctx = clone.getContext('2d');
@ -33,7 +19,4 @@ onmessage = function(e) {
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,10 @@
onmessage = function(e) {
function processPixels(imagedata) {
var pixeldata = imagedata.data;
for (var i = 0; i < pixeldata.length; i = i+4) {
pixeldata[i] = 128;
}
postMessage(imagedata);
}
processPixels(e.data[0]);
}

View file

@ -1,13 +1,3 @@
<!--
onmessage = (event) => {
try {
postMessage(event.data, {transfer: [event.data]});
} catch(e) {
postMessage(''+e);
}
}
/*
-->
<!doctype html>
<title>Using dictionary as postMessage's second argument</title>
<script src="/resources/testharness.js"></script>
@ -15,7 +5,7 @@ onmessage = (event) => {
<div id="log"></div>
<script>
(async_test()).step(function() {
var worker = new Worker('#');
var worker = new Worker('second-argument-dictionary.js');
var ab = new ArrayBuffer(1);
worker.postMessage(ab, {transfer: [ab]});
worker.onmessage = this.step_func(function(e) {
@ -23,7 +13,4 @@ onmessage = (event) => {
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,7 @@
onmessage = (event) => {
try {
postMessage(event.data, {transfer: [event.data]});
} catch(e) {
postMessage(''+e);
}
}

View file

@ -1,11 +1,3 @@
<!--
try {
postMessage(false, [null]);
} catch(e) {
postMessage(e instanceof TypeError);
}
/*
-->
<!doctype html>
<title>Using [null] in postMessage's second argument</title>
<script src="/resources/testharness.js"></script>
@ -13,14 +5,10 @@ try {
<div id="log"></div>
<script>
(async_test()).step(function() {
var worker = new Worker('#');
var worker = new Worker('second-argument-null-in-array.js');
worker.onmessage = this.step_func(function(e) {
assert_true(e.data);
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,5 @@
try {
postMessage(false, [null]);
} catch(e) {
postMessage(e instanceof TypeError);
}

View file

@ -1,11 +1,3 @@
<!--
try {
postMessage(1, null);
} catch(e) {
postMessage(e instanceof TypeError);
}
/*
-->
<!doctype html>
<title>Using null in postMessage's second argument</title>
<script src="/resources/testharness.js"></script>
@ -13,13 +5,10 @@ try {
<div id="log"></div>
<script>
(async_test()).step(function() {
var worker = new Worker('#');
var worker = new Worker('second-argument-null.js');
worker.onmessage = this.step_func(function(e) {
assert_equals(1, e.data);
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,5 @@
try {
postMessage(1, null);
} catch(e) {
postMessage(e instanceof TypeError);
}

View file

@ -1,11 +1,3 @@
<!--
try {
postMessage(1, undefined);
} catch(e) {
postMessage(''+e);
}
/*
-->
<!doctype html>
<title>Using undefined in postMessage's second argument</title>
<script src="/resources/testharness.js"></script>
@ -13,13 +5,10 @@ try {
<div id="log"></div>
<script>
(async_test()).step(function() {
var worker = new Worker('#');
var worker = new Worker('second-argument-undefined.js');
worker.onmessage = this.step_func(function(e) {
assert_equals(e.data, 1);
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,5 @@
try {
postMessage(1, undefined);
} catch(e) {
postMessage(''+e);
}

View file

@ -1,10 +1,3 @@
<!--
var x = postMessage;
postMessage = 1;
x(postMessage == 1);
/*
-->
<!doctype html>
<title>setting postMessage</title>
<script src="/resources/testharness.js"></script>
@ -12,13 +5,10 @@ x(postMessage == 1);
<div id="log"></div>
<script>
(async_test()).step(function() {
var worker = new Worker('#');
var worker = new Worker('setting-postMessage.js');
worker.onmessage = this.step_func(function(e) {
assert_true(e.data);
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,3 @@
var x = postMessage;
postMessage = 1;
x(postMessage == 1);

View file

@ -1,12 +1,3 @@
<!--
onmessage = function(e) {
var imagedata = e.data;
imagedata.data[0] = 128;
postMessage(imagedata);
}
/*
-->
<!doctype html>
<title>structured clone of ImageData</title>
<script src="/resources/testharness.js"></script>
@ -14,7 +5,7 @@ onmessage = function(e) {
<div id="log"></div>
<script>
(async_test()).step(function() {
var worker = new Worker('#');
var worker = new Worker('structured-clone-imagedata.js');
var ctx = document.createElement('canvas').getContext('2d');
var imagedata = ctx.getImageData(0, 0, 300, 150);
worker.postMessage(imagedata);
@ -24,7 +15,4 @@ onmessage = function(e) {
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,5 @@
onmessage = function(e) {
var imagedata = e.data;
imagedata.data[0] = 128;
postMessage(imagedata);
}

View file

@ -1,20 +1,3 @@
<!--
var err = new Error('foo');
var date = new Date();
// commented out bits are either tested elsewhere or not supported yet. or uncloneable.
var tests = [undefined, null, false, true, 1, NaN, Infinity, 'foo', date, /foo/, /* ImageData, File, FileData, FileList,*/ null/*self*/,
[undefined, null, false, true, 1, NaN, Infinity, 'foo', /*date, /foo/,*/ null/*self*/, /*[], {},*/ null/*err*/],
{a:undefined, b:null, c:false, d:true, e:1, f:NaN, g:Infinity, h:'foo', /*i:date, j:/foo/,*/ k:null/*self*/, /*l:[], m:{},*/ n:null/*err*/},
null/*err*/];
for (var i = 0; i < tests.length; ++i) {
try {
postMessage(tests[i]);
} catch(e) {
postMessage(''+e);
}
}
/*
-->
<!doctype html>
<title>structured clone of message</title>
<script src="/resources/testharness.js"></script>
@ -45,14 +28,11 @@ setTimeout(tests[tests.length-1].test.step_func(function() {
}), 500);
wrapper_test.step(function() {
var worker = new Worker('#');
var worker = new Worker('structured-clone-message.js');
var i = 0;
worker.onmessage = function(e) {
tests[i].test.step(function() { tests[i].check(e); this.done(); });
i++;
};
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,14 @@
var err = new Error('foo');
var date = new Date();
// commented out bits are either tested elsewhere or not supported yet. or uncloneable.
var tests = [undefined, null, false, true, 1, NaN, Infinity, 'foo', date, /foo/, /* ImageData, File, FileData, FileList,*/ null/*self*/,
[undefined, null, false, true, 1, NaN, Infinity, 'foo', /*date, /foo/,*/ null/*self*/, /*[], {},*/ null/*err*/],
{a:undefined, b:null, c:false, d:true, e:1, f:NaN, g:Infinity, h:'foo', /*i:date, j:/foo/,*/ k:null/*self*/, /*l:[], m:{},*/ n:null/*err*/},
null/*err*/];
for (var i = 0; i < tests.length; ++i) {
try {
postMessage(tests[i]);
} catch(e) {
postMessage(''+e);
}
}

View file

@ -1,22 +1,10 @@
<!--
addEventListener('connect', function(e) {
var passed;
switch (location.hash) {
case '#1': passed = name == ''; break;
case '#2': passed = name == 'a'; break;
case '#3': passed = name == '0'; break;
}
e.ports[0].postMessage(passed);
}, false);
/*
-->
<!doctype html>
<title>getting name</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<script>
var tests = [['#1', ''], ['#2', 'a'], ['#3', -0]];
var tests = [['getting.js#1', ''], ['getting.js#2', 'a'], ['getting.js#3', -0]];
tests.forEach(function(t) {
async_test(function() {
var w = new SharedWorker(t[0], t[1]);
@ -27,8 +15,3 @@ tests.forEach(function(t) {
});
});
</script>
<!--
*/
//-->

View file

@ -0,0 +1,9 @@
addEventListener('connect', function(e) {
var passed;
switch (location.hash) {
case '#1': passed = name == ''; break;
case '#2': passed = name == 'a'; break;
case '#3': passed = name == '0'; break;
}
e.ports[0].postMessage(passed);
}, false);

View file

@ -1,10 +1,3 @@
<!--
addEventListener('connect', function(e) {
name = 1;
e.ports[0].postMessage(name);
}, false);
/*
-->
<!doctype html>
<title>setting name</title>
<script src="/resources/testharness.js"></script>
@ -12,7 +5,7 @@ addEventListener('connect', function(e) {
<div id="log"></div>
<script>
async_test(function() {
var w1 = new SharedWorker('#1', 'x');
var w1 = new SharedWorker('setting.js#1', 'x');
w1.port.addEventListener('message', this.step_func(function(e) {
assert_equals(e.data, 1);
this.done();
@ -20,6 +13,3 @@ async_test(function() {
w1.port.start();
});
</script>
<!--
*/
//-->

View file

@ -0,0 +1,4 @@
addEventListener('connect', function(e) {
name = 1;
e.ports[0].postMessage(name);
}, false);

View file

@ -1,25 +1,3 @@
<!--
var results = [];
try {
self.onconnect = 1;
results.push(String(onconnect));
} catch(e) {
results.push(''+e);
}
try {
self.onconnect = {handleEvent:function(){}};
results.push(String(onconnect));
} catch(e) {
results.push(''+e);
}
var f = function(e) {
results.push(e.data);
e.ports[0].postMessage(results);
};
onconnect = f;
results.push(typeof onconnect);
/*
-->
<!doctype html>
<title>onconnect</title>
<script src="/resources/testharness.js"></script>
@ -27,13 +5,10 @@ results.push(typeof onconnect);
<div id="log"></div>
<script>
async_test(function() {
var w1 = new SharedWorker('#', '');
var w1 = new SharedWorker('onconnect.js', '');
w1.port.addEventListener('message', this.step_func(function(e) {
assert_array_equals(e.data, ['null', 'null', 'function', '']);
}), false);
w1.port.start();
});
</script>
<!--
*/
//-->

View file

@ -0,0 +1,19 @@
var results = [];
try {
self.onconnect = 1;
results.push(String(onconnect));
} catch(e) {
results.push(''+e);
}
try {
self.onconnect = {handleEvent:function(){}};
results.push(String(onconnect));
} catch(e) {
results.push(''+e);
}
var f = function(e) {
results.push(e.data);
e.ports[0].postMessage(results);
};
onconnect = f;
results.push(typeof onconnect);

View file

@ -1,18 +1,10 @@
<!--
onmessage = function(e) {
postMessage(1);
throw new Error();
}
close();
/*
-->
<!doctype html>
<title>close() and incoming message</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<script>
var worker = new Worker('#');
var worker = new Worker('incoming-message.js');
worker.onmessage = function(e) {
assert_unreached("Got message");
};
@ -21,9 +13,4 @@ worker.onerror = function(e) {
};
worker.postMessage(1);
setTimeout(done, 2000);
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,5 @@
onmessage = function(e) {
postMessage(1);
throw new Error();
}
close();

View file

@ -1,9 +1,3 @@
<!--
postMessage(1);
close();
postMessage(2);
/*
-->
<!doctype html>
<title>close() and sending messages</title>
<script src="/resources/testharness.js"></script>
@ -11,7 +5,7 @@ postMessage(2);
<div id="log"></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('sending-messages.js');
var i = 0;
worker.onmessage = this.step_func(function(e) {
i++;
@ -21,7 +15,4 @@ async_test(function() {
}
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,3 @@
postMessage(1);
close();
postMessage(2);

View file

@ -1,24 +1,10 @@
<!--
var interval1 = setInterval(function() {
clearInterval(interval1);
postMessage(1);
throw new Error();
}, 10);
close();
var interval2 = setInterval(function() {
clearInterval(interval2);
postMessage(1);
throw new Error();
}, 10);
/*
-->
<!doctype html>
<title>close() and setInterval</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<script>
var worker = new Worker('#');
var worker = new Worker('setInterval.js');
worker.onmessage = function(e) {
assert_unreached("Got message");
};
@ -26,9 +12,4 @@ worker.onerror = function(e) {
assert_unreached("Got error");
};
setTimeout(done, 2000);
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,11 @@
var interval1 = setInterval(function() {
clearInterval(interval1);
postMessage(1);
throw new Error();
}, 10);
close();
var interval2 = setInterval(function() {
clearInterval(interval2);
postMessage(1);
throw new Error();
}, 10);

View file

@ -1,20 +1,10 @@
<!--
function x() {
postMessage(1);
throw new Error();
}
setTimeout(x, 0);
close();
setTimeout(x, 0);
/*
-->
<!doctype html>
<title>close() and setTimeout</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<script>
var worker = new Worker('#');
var worker = new Worker('setTimeout.js');
worker.onmessage = function(e) {
assert_unreached("Got message");
};
@ -22,7 +12,4 @@ worker.onerror = function(e) {
assert_unreached("Got error");
};
setTimeout(done, 2000);
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,7 @@
function x() {
postMessage(1);
throw new Error();
}
setTimeout(x, 0);
close();
setTimeout(x, 0);

View file

@ -1,9 +1,3 @@
<!--
postMessage([null, location.href, location.protocol, location.host,
location.hostname, location.port, location.pathname,
location.search, location.hash]);
/*
-->
<!doctype html>
<title>members of WorkerLocation</title>
<script src="/resources/testharness.js"></script>
@ -11,21 +5,18 @@ postMessage([null, location.href, location.protocol, location.host,
<div id="log"></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('members.js');
worker.onmessage = this.step_func(function(e) {
assert_equals(e.data[0], null);
assert_equals(e.data[1], location.href + '#', 'href');
assert_equals(e.data[1], location.href.replace('.html', '.js'), 'href');
assert_equals(e.data[2], location.protocol, 'protocol');
assert_equals(e.data[3], location.host, 'host');
assert_equals(e.data[4], location.hostname, 'hostname');
assert_equals(e.data[5], location.port, 'port');
assert_equals(e.data[6], location.pathname, 'pathname');
assert_equals(e.data[6], location.pathname.replace('.html', '.js'), 'pathname');
assert_equals(e.data[7], location.search, 'search');
assert_equals(e.data[8], '', 'hash');
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,3 @@
postMessage([null, location.href, location.protocol, location.host,
location.hostname, location.port, location.pathname,
location.search, location.hash]);

View file

@ -1,7 +1,3 @@
<!--
postMessage(location === location);
/*
-->
<!doctype html>
<title>location === location</title>
<script src="/resources/testharness.js"></script>
@ -9,13 +5,10 @@ postMessage(location === location);
<div id="log"></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('returns-same-object.js');
worker.onmessage = this.step_func(function(e) {
assert_true(e.data);
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1 @@
postMessage(location === location);

View file

@ -1,19 +1,3 @@
<!--
var exceptions = [];
try { location.href = 1; } catch(e) { exceptions.push('href'); }
try { location.protocol = 1; } catch(e) { exceptions.push('protocol'); }
try { location.host = 1; } catch(e) { exceptions.push('host'); }
try { location.hostname = 1; } catch(e) { exceptions.push('hostname');}
try { location.port = 1; } catch(e) { exceptions.push('port'); }
try { location.pathname = 1; } catch(e) { exceptions.push('pathname'); }
try { location.search = 1; } catch(e) { exceptions.push('search'); }
try { location.hash = 1; } catch(e) { exceptions.push('hash'); }
postMessage([null, location.href, location.protocol, location.host,
location.hostname, location.port, location.pathname,
location.search, location.hash, exceptions]);
/*
-->
<!doctype html>
<title>setting members of WorkerLocation</title>
<script src="/resources/testharness.js"></script>
@ -21,23 +5,19 @@ postMessage([null, location.href, location.protocol, location.host,
<div id="log"></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('setting-members.js');
worker.onmessage = this.step_func(function(e) {
assert_equals(e.data[0], null);
assert_equals(e.data[1], location.href + '#', 'href');
assert_equals(e.data[1], location.href.replace('.html', '.js'), 'href');
assert_equals(e.data[2], location.protocol, 'protocol');
assert_equals(e.data[3], location.host, 'host');
assert_equals(e.data[4], location.hostname, 'hostname');
assert_equals(e.data[5], location.port, 'port');
assert_equals(e.data[6], location.pathname, 'pathname');
assert_equals(e.data[6], location.pathname.replace('.html', '.js'), 'pathname');
assert_equals(e.data[7], location.search, 'search');
assert_equals(e.data[8], '', 'hash');
assert_array_equals(e.data[9], [], 'number of exceptions');
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,13 @@
var exceptions = [];
try { location.href = 1; } catch(e) { exceptions.push('href'); }
try { location.protocol = 1; } catch(e) { exceptions.push('protocol'); }
try { location.host = 1; } catch(e) { exceptions.push('host'); }
try { location.hostname = 1; } catch(e) { exceptions.push('hostname');}
try { location.port = 1; } catch(e) { exceptions.push('port'); }
try { location.pathname = 1; } catch(e) { exceptions.push('pathname'); }
try { location.search = 1; } catch(e) { exceptions.push('search'); }
try { location.hash = 1; } catch(e) { exceptions.push('hash'); }
postMessage([null, location.href, location.protocol, location.host,
location.hostname, location.port, location.pathname,
location.search, location.hash, exceptions]);

View file

@ -1,13 +1,3 @@
<!--
onerror = function(a, b, c, d) {
y(); // the error is "not handled"
}
function x() {
y();
}
x();
/*
-->
<!doctype html>
<title>onerror, "not handled" with an error in the onerror function</title>
<script src="/resources/testharness.js"></script>
@ -15,18 +5,15 @@ x();
<div id="log"></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('exception-in-onerror.js');
worker.onerror = this.step_func(function(e) {
assert_true(e instanceof ErrorEvent, 'e instanceof ErrorEvent');
assert_equals(typeof e.message, 'string', 'typeof e.message');
assert_equals(e.filename, document.URL+'#', 'e.filename');
assert_equals(e.filename, document.URL.replace('.html', '.js'), 'e.filename');
assert_equals(typeof e.lineno, 'number', 'typeof e.lineno');
assert_equals(typeof e.colno, 'number', 'typeof e.column');
e.preventDefault(); // "handled"
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,7 @@
onerror = function(a, b, c, d) {
y(); // the error is "not handled"
}
function x() {
y();
}
x();

View file

@ -1,14 +1,3 @@
<!--
onerror = function(a, b, c, d) {
postMessage([a, b, c, d]);
return true; // the error is "handled"
}
function x() {
y();
}
x();
/*
-->
<!doctype html>
<title>onerror, "handled"</title>
<script src="/resources/testharness.js"></script>
@ -16,10 +5,10 @@ x();
<div id="log"></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('handled.js');
worker.onmessage = this.step_func(function(e) {
assert_equals(typeof e.data[0], 'string', 'first argument');
assert_equals(e.data[1], document.URL+'#', 'second argument');
assert_equals(e.data[1], document.URL.replace('.html', '.js'), 'second argument');
assert_equals(typeof e.data[2], 'number', 'third argument');
assert_equals(typeof e.data[3], 'number', 'fourth argument');
setTimeout(this.step_func(function() {
@ -30,7 +19,4 @@ async_test(function() {
assert_unreached();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,8 @@
onerror = function(a, b, c, d) {
postMessage([a, b, c, d]);
return true; // the error is "handled"
}
function x() {
y();
}
x();

View file

@ -1,13 +1,3 @@
<!--
onerror = function(a, b, c, d) {
return false; // the error is "not handled"
}
function x() {
y();
}
x();
/*
-->
<!doctype html>
<title>onerror, "not handled"</title>
<script src="/resources/testharness.js"></script>
@ -15,18 +5,15 @@ x();
<div id="log"></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('not-handled.js');
worker.onerror = this.step_func(function(e) {
assert_true(e instanceof ErrorEvent, 'e instanceof ErrorEvent');
assert_equals(typeof e.message, 'string', 'typeof e.message');
assert_equals(e.filename, document.URL+'#', 'e.filename');
assert_equals(e.filename, document.URL.replace('.html', '.js'), 'e.filename');
assert_equals(typeof e.lineno, 'number', 'typeof e.lineno');
assert_equals(typeof e.colno, 'number', 'typeof e.column');
e.preventDefault(); // "handled"
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,7 @@
onerror = function(a, b, c, d) {
return false; // the error is "not handled"
}
function x() {
y();
}
x();

View file

@ -1,10 +1,3 @@
<!--
function x() {
y();
}
x();
/*
-->
<!doctype html>
<title>onerror, "not handled" with only window.onerror defined</title>
<script src="/resources/testharness.js"></script>
@ -15,17 +8,14 @@ setup({
allow_uncaught_exception: true,
});
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('propagate-to-window-onerror.js');
window.onerror = this.step_func(function(a, b, c, d) {
assert_equals(typeof a, 'string', 'first argument');
assert_equals(b, document.URL+'#', 'second argument');
assert_equals(b, document.URL.replace('.html', '.js'), 'second argument');
assert_equals(typeof c, 'number', 'third argument');
assert_equals(typeof d, 'number', 'fourth argument');
this.done();
return true; // "handled"
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -1,23 +1,3 @@
<!--
var results = [];
function check(func, msg) {
try {
results.push([func(), msg]);
} catch(ex) {
results.push([String(ex), msg]);
}
}
check(function() { return self === self; }, 'self === self');
check(function() { return self instanceof WorkerGlobalScope; }, 'self instanceof WorkerGlobalScope');
check(function() { return 'self' in self; }, '\'self\' in self');
check(function() {
var x = self;
self = 1;
return x === self;
}, 'self = 1');
postMessage(results);
/*
-->
<!doctype html>
<title>self</title>
<script src="/resources/testharness.js"></script>
@ -25,7 +5,7 @@ postMessage(results);
<div id="log"></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('self.js');
worker.onmessage = this.step_func(function(e) {
for (var i = 0; i < e.data.length; ++i) {
assert_true(e.data[i][0], e.data[i][1]);
@ -33,7 +13,4 @@ async_test(function() {
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,17 @@
var results = [];
function check(func, msg) {
try {
results.push([func(), msg]);
} catch(ex) {
results.push([String(ex), msg]);
}
}
check(function() { return self === self; }, 'self === self');
check(function() { return self instanceof WorkerGlobalScope; }, 'self instanceof WorkerGlobalScope');
check(function() { return 'self' in self; }, '\'self\' in self');
check(function() {
var x = self;
self = 1;
return x === self;
}, 'self = 1');
postMessage(results);

View file

@ -1,7 +1,3 @@
<!--
setTimeout(function() { postMessage(1) }, 10);
/*
-->
<!doctype html>
<title>setTimeout</title>
<script src="/resources/testharness.js"></script>
@ -9,15 +5,10 @@ setTimeout(function() { postMessage(1) }, 10);
<div id=log></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('001.js');
worker.onmessage = this.step_func(function(e) {
assert_equals(e.data, 1);
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1 @@
setTimeout(function() { postMessage(1) }, 10);

View file

@ -1,8 +1,3 @@
<!--
var t = setTimeout(function() { postMessage(1); }, 10);
clearTimeout(t);
/*
-->
<!doctype html>
<title>clearTimeout</title>
<script src="/resources/testharness.js"></script>
@ -10,12 +5,9 @@ clearTimeout(t);
<div id=log></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('002.js');
var gotMessage = false;
worker.onmessage = function() { gotMessage = true; };
setTimeout(this.step_func(function() { assert_false(gotMessage); this.done(); }), 100);
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,2 @@
var t = setTimeout(function() { postMessage(1); }, 10);
clearTimeout(t);

View file

@ -1,7 +1,3 @@
<!--
setInterval(function() { postMessage(1); }, 10);
/*
-->
<!doctype html>
<title>setInterval</title>
<script src="/resources/testharness.js"></script>
@ -9,14 +5,10 @@ setInterval(function() { postMessage(1); }, 10);
<div id=log></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('003.js');
worker.onmessage = this.step_func(function(e) {
assert_equals(e.data, 1);
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1 @@
setInterval(function() { postMessage(1); }, 10);

View file

@ -1,10 +1,3 @@
<!--
var t = setInterval(function() {
postMessage(1);
}, 10);
clearInterval(t);
/*
-->
<!doctype html>
<title>clearInterval</title>
<script src="/resources/testharness.js"></script>
@ -12,12 +5,9 @@ clearInterval(t);
<div id=log></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('004.js');
var i = 0;
worker.onmessage = function() { i++; }
setTimeout(this.step_func(function() { assert_equals(i, 0); this.done(); }), 100);
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,4 @@
var t = setInterval(function() {
postMessage(1);
}, 10);
clearInterval(t);

View file

@ -1,9 +1,3 @@
<!--
self.close();
var t = setInterval(function() {}, 10);
postMessage(t);
/*
-->
<!doctype html>
<title>setInterval when closing</title>
<script src="/resources/testharness.js"></script>
@ -11,13 +5,10 @@ postMessage(t);
<div id=log></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('005.js');
worker.onmessage = this.step_func(function(e) {
assert_equals(e.data, 1);
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,3 @@
self.close();
var t = setInterval(function() {}, 10);
postMessage(t);

View file

@ -1,14 +1,3 @@
<!--
var x = 'a';
try {
importScripts('data:text/javascript,x+="b"',
'data:text/javascript,x+="c"');
} catch(e) {
x += "d"
}
postMessage(x);
/*
-->
<!doctype html>
<title>importScripts running scripts</title>
<script src="/resources/testharness.js"></script>
@ -16,13 +5,10 @@ postMessage(x);
<div id="log"></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('003.js');
worker.onmessage = this.step_func(function(e) {
assert_equals(e.data, "abc");
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,8 @@
var x = 'a';
try {
importScripts('data:text/javascript,x+="b"',
'data:text/javascript,x+="c"');
} catch(e) {
x += "d"
}
postMessage(x);

View file

@ -1,19 +1,3 @@
<!--
var x = '';
var exception;
try {
importScripts('data:text/javascript,x+="first script successful. "',
'data:text/javascript,x+="FAIL (second script). "; for(;) break;', // doesn't compile
'data:text/javascript,x+="FAIL (third script)"');
} catch(ex) {
if (ex instanceof SyntaxError)
exception = true;
else
exception = String(ex);
}
postMessage([x, exception]);
/*
-->
<!doctype html>
<title>importScripts broken script</title>
<script src="/resources/testharness.js"></script>
@ -21,14 +5,11 @@ postMessage([x, exception]);
<div id="log"></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('004.js');
worker.onmessage = this.step_func(function(e) {
assert_equals(e.data[0], "first script successful. ");
assert_true(e.data[1], 'expected SyntaxError');
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,13 @@
var x = '';
var exception;
try {
importScripts('data:text/javascript,x+="first script successful. "',
'data:text/javascript,x+="FAIL (second script). "; for(;) break;', // doesn't compile
'data:text/javascript,x+="FAIL (third script)"');
} catch(ex) {
if (ex instanceof SyntaxError)
exception = true;
else
exception = String(ex);
}
postMessage([x, exception]);

View file

@ -1,15 +1,3 @@
<!--
var x;
var y;
try {
importScripts('data:text/javascript,x={',
'data:text/javascript,}');
} catch(e) {
y = true;
}
postMessage([x, y]);
/*
-->
<!doctype html>
<title>importScripts separate scripts</title>
<script src="/resources/testharness.js"></script>
@ -17,14 +5,11 @@ postMessage([x, y]);
<div id="log"></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('005.js');
worker.onmessage = this.step_func(function(e) {
assert_equals(e.data[0], undefined);
assert_true(e.data[1]);
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,9 @@
var x;
var y;
try {
importScripts('data:text/javascript,x={',
'data:text/javascript,}');
} catch(e) {
y = true;
}
postMessage([x, y]);

View file

@ -1,17 +1,3 @@
<!--
var x;
var y;
var z;
try {
importScripts('data:text/javascript,x=1',
'data:text/javascript,throw 2',
'data:text/javascript,z=3');
} catch(e) {
y = e;
}
postMessage([x, y, z]);
/*
-->
<!doctype html>
<title>importScripts uncaught exception</title>
<meta name="timeout" content="long">
@ -20,7 +6,7 @@ postMessage([x, y, z]);
<div id="log"></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('006.js');
worker.onmessage = this.step_func(function(e) {
assert_equals(e.data[0], 1);
assert_equals(e.data[1], 2);
@ -28,7 +14,4 @@ async_test(function() {
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,11 @@
var x;
var y;
var z;
try {
importScripts('data:text/javascript,x=1',
'data:text/javascript,throw 2',
'data:text/javascript,z=3');
} catch(e) {
y = e;
}
postMessage([x, y, z]);

View file

@ -1,8 +1,3 @@
<!--
importScripts('data:text/javascript,postMessage(1)');
postMessage(2);
/*
-->
<!doctype html>
<title>postMessage in importScripts</title>
<script src="/resources/testharness.js"></script>
@ -10,7 +5,7 @@ postMessage(2);
<div id="log"></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('007.js');
var i = 0;
worker.onmessage = this.step_func(function(e) {
i++;
@ -19,7 +14,4 @@ async_test(function() {
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,2 @@
importScripts('data:text/javascript,postMessage(1)');
postMessage(2);

View file

@ -1,9 +1,3 @@
<!--
var log = postMessage;
importScripts('data:text/javascript,function run() { log(true) }');
run();
/*
-->
<!doctype html>
<title>variables and functions crossing importScripts boundary</title>
<script src="/resources/testharness.js"></script>
@ -11,13 +5,10 @@ run();
<div id="log"></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('008.js');
worker.onmessage = this.step_func(function(e) {
assert_true(e.data);
this.done();
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,3 @@
var log = postMessage;
importScripts('data:text/javascript,function run() { log(true) }');
run();

View file

@ -1,9 +1,3 @@
<!--
var log = postMessage;
importScripts('data:text/javascript,function run() { for(var i = 0; i < 1000; ++i) { if (i == 500) log(true); } return 1; }');
postMessage(run());
/*
-->
<!doctype html>
<title>variables and functions crossing importScripts boundary, take 2</title>
<script src="/resources/testharness.js"></script>
@ -11,7 +5,7 @@ postMessage(run());
<div id="log"></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('009.js');
var i = 0;
worker.onmessage = this.step_func(function(e) {
i++;
@ -23,7 +17,4 @@ async_test(function() {
}
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,3 @@
var log = postMessage;
importScripts('data:text/javascript,function run() { for(var i = 0; i < 1000; ++i) { if (i == 500) log(true); } return 1; }');
postMessage(run());

View file

@ -1,17 +1,3 @@
<!--
// prevent recursion
if ('beenThere' in self) {
throw 'undefined stringified to the empty string';
}
beenThere = true;
try {
importScripts(undefined);
postMessage(got);
} catch(ex) {
postMessage(String(ex));
}
/*
-->
<!doctype html>
<title>importScripts(undefined)</title>
<script src="/resources/testharness.js"></script>
@ -19,7 +5,7 @@ try {
<div id="log"></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('010.js');
worker.onmessage = this.step_func(function(e) {
assert_equals(e.data, 'undefined');
this.done();
@ -28,7 +14,4 @@ async_test(function() {
assert_unreached(e.message);
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,11 @@
// prevent recursion
if ('beenThere' in self) {
throw 'undefined stringified to the empty string';
}
beenThere = true;
try {
importScripts(undefined);
postMessage(got);
} catch(ex) {
postMessage(String(ex));
}

View file

@ -1,17 +1,3 @@
<!--
// prevent recursion
if ('beenThere' in self) {
throw 'null stringified to the empty string';
}
beenThere = true;
try {
importScripts(null);
postMessage(got);
} catch(ex) {
postMessage(String(ex));
}
/*
-->
<!doctype html>
<title>importScripts(null)</title>
<script src="/resources/testharness.js"></script>
@ -19,7 +5,7 @@ try {
<div id="log"></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('011.js');
worker.onmessage = this.step_func(function(e) {
assert_equals(e.data, 'null');
this.done();
@ -28,7 +14,4 @@ async_test(function() {
assert_unreached(e.message);
});
});
</script>
<!--
*/
//-->
</script>

View file

@ -0,0 +1,11 @@
// prevent recursion
if ('beenThere' in self) {
throw 'null stringified to the empty string';
}
beenThere = true;
try {
importScripts(null);
postMessage(got);
} catch(ex) {
postMessage(String(ex));
}

View file

@ -1,17 +1,3 @@
<!--
// prevent recursion
if ('beenThere' in self) {
throw '1 stringified to the empty string';
}
beenThere = true;
try {
importScripts(1);
postMessage(got);
} catch(ex) {
postMessage(String(ex));
}
/*
-->
<!doctype html>
<title>importScripts(1)</title>
<script src="/resources/testharness.js"></script>
@ -19,7 +5,7 @@ try {
<div id="log"></div>
<script>
async_test(function() {
var worker = new Worker('#');
var worker = new Worker('012.js');
worker.onmessage = this.step_func(function(e) {
assert_equals(e.data, '1');
this.done();
@ -28,7 +14,4 @@ async_test(function() {
assert_unreached(e.message);
});
});
</script>
<!--
*/
//-->
</script>

Some files were not shown because too many files have changed in this diff Show more