1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/dom/workers/test/console_worker.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,104 @@ 1.4 +/** 1.5 + * Any copyright is dedicated to the Public Domain. 1.6 + * http://creativecommons.org/publicdomain/zero/1.0/ 1.7 + */ 1.8 + 1.9 +onmessage = function(event) { 1.10 + // TEST: does console exist? 1.11 + postMessage({event: 'console exists', status: !!console, last : false}); 1.12 + 1.13 + postMessage({event: 'trace without function', status: true, last : false}); 1.14 + 1.15 + for (var i = 0; i < 10; ++i) { 1.16 + console.what('1', 123, 321); 1.17 + } 1.18 + 1.19 + for (var i = 0; i < 10; ++i) { 1.20 + console.log(i, i, i); 1.21 + } 1.22 + 1.23 + function trace1() { 1.24 + function trace2() { 1.25 + function trace3() { 1.26 + console.trace("trace " + i); 1.27 + } 1.28 + trace3(); 1.29 + } 1.30 + trace2(); 1.31 + } 1.32 + trace1(); 1.33 + 1.34 + foobar585956c = function(a) { 1.35 + console.trace(); 1.36 + return a+"c"; 1.37 + }; 1.38 + 1.39 + function foobar585956b(a) { 1.40 + return foobar585956c(a+"b"); 1.41 + } 1.42 + 1.43 + function foobar585956a(omg) { 1.44 + return foobar585956b(omg + "a"); 1.45 + } 1.46 + 1.47 + function foobar646025(omg) { 1.48 + console.log(omg, "o", "d"); 1.49 + } 1.50 + 1.51 + function startTimer(timer) { 1.52 + console.time(timer); 1.53 + } 1.54 + 1.55 + function stopTimer(timer) { 1.56 + console.timeEnd(timer); 1.57 + } 1.58 + 1.59 + function testGroups() { 1.60 + console.groupCollapsed("a", "group"); 1.61 + console.group("b", "group"); 1.62 + console.groupEnd("b", "group"); 1.63 + } 1.64 + 1.65 + foobar585956a('omg'); 1.66 + foobar646025('omg'); 1.67 + testGroups(); 1.68 + startTimer('foo'); 1.69 + setTimeout(function() { 1.70 + stopTimer('foo'); 1.71 + nextSteps(event); 1.72 + }, 10); 1.73 +} 1.74 + 1.75 +function nextSteps(event) { 1.76 + 1.77 + function namelessTimer() { 1.78 + console.time(); 1.79 + console.timeEnd(); 1.80 + } 1.81 + 1.82 + namelessTimer(); 1.83 + 1.84 + var str = "Test Message." 1.85 + console.foobar(str); // if this throws, we don't execute following funcs 1.86 + console.log(str); 1.87 + console.info(str); 1.88 + console.warn(str); 1.89 + console.error(str); 1.90 + console.exception(str); 1.91 + console.assert(true, str); 1.92 + console.assert(false, str); 1.93 + console.profile(str); 1.94 + console.profileEnd(str); 1.95 + postMessage({event: '4 messages', status: true, last : false}); 1.96 + 1.97 + // Recursive: 1.98 + if (event.data == true) { 1.99 + var worker = new Worker('console_worker.js'); 1.100 + worker.onmessage = function(event) { 1.101 + postMessage(event.data); 1.102 + } 1.103 + worker.postMessage(false); 1.104 + } else { 1.105 + postMessage({event: 'bye bye', status: true, last : true}); 1.106 + } 1.107 +}