| Index: third_party/WebKit/LayoutTests/imported/wpt/resources/testharnessreport.js
|
| diff --git a/third_party/WebKit/LayoutTests/imported/wpt/resources/testharnessreport.js b/third_party/WebKit/LayoutTests/imported/wpt/resources/testharnessreport.js
|
| index 145a0c44d0c20bbc65dea70bf634752b3ba4c2a3..fc6222fe32b4f193e9a7e31c030cc35ca895e465 100644
|
| --- a/third_party/WebKit/LayoutTests/imported/wpt/resources/testharnessreport.js
|
| +++ b/third_party/WebKit/LayoutTests/imported/wpt/resources/testharnessreport.js
|
| @@ -14,6 +14,8 @@
|
|
|
| (function() {
|
|
|
| + var output_document = document;
|
| +
|
| // Setup for WebKit JavaScript tests
|
| if (self.testRunner) {
|
| testRunner.dumpAsText();
|
| @@ -146,12 +148,17 @@
|
| }
|
| }, { once: true });
|
|
|
| + add_start_callback(function(properties) {
|
| + if (properties.output_document)
|
| + output_document = properties.output_document;
|
| + });
|
| +
|
| // Using a callback function, test results will be added to the page in a
|
| // manner that allows dumpAsText to produce readable test results.
|
| add_completion_callback(function (tests, harness_status) {
|
|
|
| // Create element to hold results.
|
| - var results = document.createElement("pre");
|
| + var results = output_document.createElement("pre");
|
|
|
| // Declare result string.
|
| var resultStr = "This is a testharness.js-based test.\n";
|
| @@ -167,7 +174,7 @@
|
| }
|
| // reflection tests contain huge number of tests, and Chromium code
|
| // review tool has the 1MB diff size limit. We merge PASS lines.
|
| - if (document.URL.indexOf("/html/dom/reflection") >= 0) {
|
| + if (output_document.URL.indexOf("/html/dom/reflection") >= 0) {
|
| for (var i = 0; i < tests.length; ++i) {
|
| if (tests[i].status == 0) {
|
| var colon = tests[i].name.indexOf(':');
|
| @@ -215,26 +222,26 @@
|
| if (isCSSWGTest() || isJSTest()) {
|
| // Anything isn't material to the testrunner output, so
|
| // should be hidden from the text dump.
|
| - if (document.body && document.body.tagName == 'BODY')
|
| - document.body.textContent = '';
|
| + if (output_document.body && output_document.body.tagName == 'BODY')
|
| + output_document.body.textContent = '';
|
| }
|
| }
|
|
|
| - // Add results element to document.
|
| - if (!document.body || document.body.tagName != 'BODY') {
|
| - if (!document.documentElement)
|
| - document.appendChild(document.createElement('html'));
|
| - else if (document.body) // document.body is <frameset>.
|
| - document.body.remove();
|
| - document.documentElement.appendChild(document.createElement("body"));
|
| + // Add results element to output_document.
|
| + if (!output_document.body || output_document.body.tagName != 'BODY') {
|
| + if (!output_document.documentElement)
|
| + output_document.appendChild(output_document.createElement('html'));
|
| + else if (output_document.body) // output_document.body is <frameset>.
|
| + output_document.body.remove();
|
| + output_document.documentElement.appendChild(output_document.createElement("body"));
|
| }
|
| - document.body.appendChild(results);
|
| + output_document.body.appendChild(results);
|
|
|
| if (self.testRunner)
|
| testRunner.notifyDone();
|
| }
|
|
|
| - if (didDispatchLoadEvent || document.readyState != 'loading') {
|
| + if (didDispatchLoadEvent || output_document.readyState != 'loading') {
|
| // This function might not be the last 'completion callback', and
|
| // another completion callback might generate more results. So, we
|
| // don't dump the results immediately.
|
|
|