diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-21 11:44:51 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-21 11:44:51 +0000 |
commit | 9e3c08db40b8916968b9f30096c7be3f00ce9647 (patch) | |
tree | a68f146d7fa01f0134297619fbe7e33db084e0aa /testing/mochitest/harness.xhtml | |
parent | Initial commit. (diff) | |
download | thunderbird-9e3c08db40b8916968b9f30096c7be3f00ce9647.tar.xz thunderbird-9e3c08db40b8916968b9f30096c7be3f00ce9647.zip |
Adding upstream version 1:115.7.0.upstream/1%115.7.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r-- | testing/mochitest/harness.xhtml | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/testing/mochitest/harness.xhtml b/testing/mochitest/harness.xhtml new file mode 100644 index 0000000000..e5fec05fe8 --- /dev/null +++ b/testing/mochitest/harness.xhtml @@ -0,0 +1,100 @@ +<?xml version="1.0"?> +<?xml-stylesheet href="chrome://global/skin" type="text/css"?> +<?xml-stylesheet href="chrome://mochikit/content/static/harness.css" + type="text/css"?> + +<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" + title="Chrome Test Harness" + directory="chrome"> + + <script src="chrome://mochikit/content/tests/SimpleTest/LogController.js"/> + <script src="chrome://mochikit/content/tests/SimpleTest/MemoryStats.js"/> + <script src="chrome://mochikit/content/tests/SimpleTest/TestRunner.js"/> + <script src="chrome://mochikit/content/tests/SimpleTest/MozillaLogger.js"/> + <script src="chrome://mochikit/content/chrome-harness.js" /> + <script src="chrome://mochikit/content/chunkifyTests.js" /> + <script src="chrome://mochikit/content/manifestLibrary.js" /> + <script src="chrome://mochikit/content/tests/SimpleTest/setup.js" /> + <script type="application/javascript"><![CDATA[ + +function loadTests() +{ + window.removeEventListener("load", loadTests); + getTestList({}, linkAndHookup); +} + +function linkAndHookup(links) { + // load server.js in so we can share template functions + var srvScope = {}; + Services.scriptloader.loadSubScript('chrome://mochikit/content/server.js', + srvScope); + + // generate our test list + srvScope.makeTags(); + var tableContent = srvScope.linksToTableRows(links, 0); + + function populate() { + // eslint-disable-next-line no-unsanitized/property + document.getElementById("test-table").innerHTML += tableContent; + } + gTestList = JSON.parse(srvScope.jsonArrayOfTestFiles(links)); + populate(); + + hookup(); +} + + window.addEventListener("load", loadTests); + ]]> + </script> + + <vbox> + <button label="Run Chrome Tests" id="runtests" flex="1"/> + + <body xmlns="http://www.w3.org/1999/xhtml" id="xulharness"> + <!--TODO: this should be separated into a file that both this file and server.js uses--> + <div class="container"> + <p style="float:right;"> + <small>Based on the MochiKit unit tests.</small> + </p> + <div class="status"> + <h1 id="indicator">Status</h1> + <h2 id="pass">Passed: <span id="pass-count">0</span></h2> + <h2 id="fail">Failed: <span id="fail-count">0</span></h2> + <h2 id="fail">Todo: <span id="todo-count">0</span></h2> + </div> + <div class="clear"></div> + <div id="current-test"> + <b>Currently Executing: <span id="current-test-path">_</span></b> + </div> + <div class="clear"></div> + <div class="frameholder"> + <iframe type="content" id="testframe" width="550" height="350"></iframe> + </div> + <div class="clear"></div> + <div class="toggle"> + <a href="#" id="toggleNonTests">Show Non-Tests</a> + <br /> + </div> + <div id="wrapper"> + <table cellpadding="0" cellspacing="0"> + <!-- tbody needed to avoid bug 494546 causing performance problems --> + <tbody id="test-table"> + <tr> + <td>Passed</td> + <td>Failed</td> + <td>Todo</td> + <td>Test Files</td> + </tr> + </tbody> + </table> + <br/> + <table cellpadding="0" cellspacing="0" border="1" bordercolor="red"> + <!-- tbody needed to avoid bug 494546 causing performance problems --> + <tbody id="fail-table"> + </tbody> + </table> + </div> + </div> + </body> + </vbox> +</window> |