| <!DOCTYPE HTML> |
| <html> |
| <head> |
| <title>Example with a shared worker</title> |
| <script src="../../testharness.js"></script> |
| <script src="../../testharnessreport.js"></script> |
| </head> |
| <body> |
| <h1>Shared Web Worker Tests</h1> |
| <p>Demonstrates running <tt>testharness</tt> based tests inside a shared worker. |
| <p>The test harness should time out due to one of the tests in the worker timing out. |
| <p>This test assumes that the browser supports <a href="http://www.w3.org/TR/workers/#shared-workers-and-the-sharedworker-interface">shared web workers</a>. |
| <div id="log"></div> |
| |
| <script> |
| test( |
| function(t) { |
| assert_true("SharedWorker" in self, |
| "Browser should support SharedWorkers"); |
| }, |
| "Browser supports SharedWorkers"); |
| |
| fetch_tests_from_worker(new SharedWorker("worker.js", |
| "My shared worker")); |
| </script> |
| <script type="text/json" id="expected"> |
| { |
| "summarized_status": { |
| "status_string": "TIMEOUT", |
| "message": null, |
| "stack": null |
| }, |
| "summarized_tests": [ |
| { |
| "status_string": "PASS", |
| "name": "Browser supports SharedWorkers", |
| "properties": {}, |
| "message": null, |
| "stack": null |
| }, |
| { |
| "message": null, |
| "name": "Worker async_test that completes successfully", |
| "properties": {}, |
| "stack": null, |
| "status_string": "PASS" |
| }, |
| { |
| "message": null, |
| "name": "Worker test that completes successfully", |
| "properties": {}, |
| "stack": null, |
| "status_string": "PASS" |
| }, |
| { |
| "message": null, |
| "name": "Worker test that doesn't run ('NOT RUN')", |
| "properties": {}, |
| "stack": null, |
| "status_string": "NOTRUN" |
| }, |
| { |
| "message": "assert_true: Failing test expected true got false", |
| "name": "Worker test that fails ('FAIL')", |
| "properties": {}, |
| "stack": "(implementation-defined)", |
| "status_string": "FAIL" |
| }, |
| { |
| "message": "Test timed out", |
| "name": "Worker test that times out ('TIMEOUT')", |
| "properties": {}, |
| "stack": null, |
| "status_string": "TIMEOUT" |
| } |
| ], |
| "type": "complete" |
| } |
| </script> |
| </body> |