| OLD | NEW |
| 1 // js-test now supports lazily printing test results which dumps all test | 1 // js-test now supports lazily printing test results which dumps all test |
| 2 // results once at the end of the test instead of building them up. To enable | 2 // results once at the end of the test instead of building them up. To enable |
| 3 // this option, call setPrintTestResultsLazily() before running any tests. | 3 // this option, call setPrintTestResultsLazily() before running any tests. |
| 4 var _lazyTestResults; // Set by setPrintTestResultsLazily(). | 4 var _lazyTestResults; // Set by setPrintTestResultsLazily(). |
| 5 var _lazyDescription; // Set by description() after setPrintTestResultsLazily(). | 5 var _lazyDescription; // Set by description() after setPrintTestResultsLazily(). |
| 6 | 6 |
| 7 // svg/dynamic-updates tests set enablePixelTesting=true, as we want to dump tex
t + pixel results | 7 // svg/dynamic-updates tests set enablePixelTesting=true, as we want to dump tex
t + pixel results |
| 8 if (self.testRunner) { | 8 if (self.testRunner) { |
| 9 if (self.enablePixelTesting) | 9 if (self.enablePixelTesting) |
| 10 testRunner.dumpAsTextWithPixelResults(); | 10 testRunner.dumpAsTextWithPixelResults(); |
| (...skipping 26 matching lines...) Expand all Loading... |
| 37 else | 37 else |
| 38 refNode = parent.firstChild; | 38 refNode = parent.firstChild; |
| 39 | 39 |
| 40 parent.insertBefore(element, refNode); | 40 parent.insertBefore(element, refNode); |
| 41 return element; | 41 return element; |
| 42 } | 42 } |
| 43 | 43 |
| 44 description = function description(msg, quiet) | 44 description = function description(msg, quiet) |
| 45 { | 45 { |
| 46 // For MSIE 6 compatibility | 46 // For MSIE 6 compatibility |
| 47 var span = document.createElement("span"); | 47 var mgsHTML = ''; |
| 48 if (quiet) | 48 if (quiet) |
| 49 span.innerHTML = '<p>' + msg + '</p><p>On success, you will see no "
<span class="fail">FAIL</span>" messages, followed by "<span class="pass">TEST C
OMPLETE</span>".</p>'; | 49 mgsHTML = '<p>' + msg + '</p><p>On success, you will see no "<span c
lass="fail">FAIL</span>" messages, followed by "<span class="pass">TEST COMPLETE
</span>".</p>'; |
| 50 else | 50 else |
| 51 span.innerHTML = '<p>' + msg + '</p><p>On success, you will see a se
ries of "<span class="pass">PASS</span>" messages, followed by "<span class="pas
s">TEST COMPLETE</span>".</p>'; | 51 mgsHTML = '<p>' + msg + '</p><p>On success, you will see a series of
"<span class="pass">PASS</span>" messages, followed by "<span class="pass">TEST
COMPLETE</span>".</p>'; |
| 52 | 52 |
| 53 if (_lazyTestResults) { | 53 if (self._lazyTestResults) { |
| 54 _lazyDescription = span; | 54 self._lazyDescription = mgsHTML; |
| 55 return; | 55 return; |
| 56 } | 56 } |
| 57 | 57 |
| 58 var span = document.createElement("span"); |
| 59 span.innerHTML = mgsHTML; |
| 58 var description = getOrCreateTestElement("description", "p"); | 60 var description = getOrCreateTestElement("description", "p"); |
| 59 if (description.firstChild) | 61 if (description.firstChild) |
| 60 description.replaceChild(span, description.firstChild); | 62 description.replaceChild(span, description.firstChild); |
| 61 else | 63 else |
| 62 description.appendChild(span); | 64 description.appendChild(span); |
| 63 }; | 65 }; |
| 64 | 66 |
| 65 debug = function debug(msg) | 67 debug = function debug(msg) |
| 66 { | 68 { |
| 67 if (self._lazyTestResults) { | 69 if (self._lazyTestResults) { |
| (...skipping 743 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 811 | 813 |
| 812 // It's possible for an async test to call finishJSTest() before js-test-post.js | 814 // It's possible for an async test to call finishJSTest() before js-test-post.js |
| 813 // has been parsed. | 815 // has been parsed. |
| 814 function finishJSTest() | 816 function finishJSTest() |
| 815 { | 817 { |
| 816 wasFinishJSTestCalled = true; | 818 wasFinishJSTestCalled = true; |
| 817 if (!self.wasPostTestScriptParsed) | 819 if (!self.wasPostTestScriptParsed) |
| 818 return; | 820 return; |
| 819 isSuccessfullyParsed(); | 821 isSuccessfullyParsed(); |
| 820 | 822 |
| 821 if (self._lazyDescription) | 823 if (self._lazyDescription) { |
| 822 getOrCreateTestElement("description", "p").appendChild(self._lazyDescripti
on); | 824 var descriptionElement = getOrCreateTestElement("description", "p"); |
| 825 var span = document.createElement("span"); |
| 826 descriptionElement.appendChild(span); |
| 827 span.innerHTML = self._lazyDescription; |
| 828 self._lazyDescription = undefined; |
| 829 } |
| 823 | 830 |
| 824 if (self._lazyTestResults && self._lazyTestResults.length > 0) { | 831 if (self._lazyTestResults && self._lazyTestResults.length > 0) { |
| 825 var consoleElement = getOrCreateTestElement("console", "div"); | 832 var consoleElement = getOrCreateTestElement("console", "div"); |
| 826 self._lazyTestResults.forEach(function(msg) { | 833 self._lazyTestResults.forEach(function(msg) { |
| 827 var span = document.createElement("span"); | 834 var span = document.createElement("span"); |
| 828 consoleElement.appendChild(span); | 835 consoleElement.appendChild(span); |
| 829 span.innerHTML = msg + '<br />'; | 836 span.innerHTML = msg + '<br />'; |
| 830 }); | 837 }); |
| 838 self._lazyTestResults = []; |
| 831 } | 839 } |
| 832 | 840 |
| 833 if (self.jsTestIsAsync && self.testRunner) | 841 if (self.jsTestIsAsync && self.testRunner) |
| 834 testRunner.notifyDone(); | 842 testRunner.notifyDone(); |
| 835 } | 843 } |
| 836 | 844 |
| 837 function startWorker(testScriptURL, workerType) | 845 function startWorker(testScriptURL, workerType) |
| 838 { | 846 { |
| 839 self.jsTestIsAsync = true; | 847 self.jsTestIsAsync = true; |
| 840 debug('Starting worker: ' + testScriptURL); | 848 debug('Starting worker: ' + testScriptURL); |
| (...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 913 testPassed = function(msg) { | 921 testPassed = function(msg) { |
| 914 workerPort.postMessage('PASS:' + msg); | 922 workerPort.postMessage('PASS:' + msg); |
| 915 }; | 923 }; |
| 916 finishJSTest = function() { | 924 finishJSTest = function() { |
| 917 workerPort.postMessage('DONE:'); | 925 workerPort.postMessage('DONE:'); |
| 918 }; | 926 }; |
| 919 debug = function(msg) { | 927 debug = function(msg) { |
| 920 workerPort.postMessage(msg); | 928 workerPort.postMessage(msg); |
| 921 }; | 929 }; |
| 922 } | 930 } |
| OLD | NEW |