295 lines
6.2 KiB
Text
295 lines
6.2 KiB
Text
|
<%
|
||
|
//
|
||
|
// Jala Project [http://opensvn.csie.org/traccgi/jala]
|
||
|
//
|
||
|
// Copyright 2004 ORF Online und Teletext GmbH
|
||
|
//
|
||
|
// Licensed under the Apache License, Version 2.0 (the ``License'');
|
||
|
// you may not use this file except in compliance with the License.
|
||
|
// You may obtain a copy of the License at
|
||
|
//
|
||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||
|
//
|
||
|
// Unless required by applicable law or agreed to in writing, software
|
||
|
// distributed under the License is distributed on an ``AS IS'' BASIS,
|
||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
|
// See the License for the specific language governing permissions and
|
||
|
// limitations under the License.
|
||
|
//
|
||
|
// $Revision$
|
||
|
// $LastChangedBy$
|
||
|
// $LastChangedDate$
|
||
|
// $HeadURL$
|
||
|
//
|
||
|
%>
|
||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
||
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
|
||
|
<head>
|
||
|
<title>Jala Unit Test Runner</title>
|
||
|
<link rel="stylesheet" type="text/css" media="screen" href="<% root.href action="jala.test.css" %>" />
|
||
|
<script type="text/javascript">
|
||
|
<!--
|
||
|
|
||
|
function toggleCheckboxes(reverse) {
|
||
|
var state = document.getElementById("toggle").checked;
|
||
|
if (reverse) {
|
||
|
state = !state;
|
||
|
}
|
||
|
var form = document.getElementById("tests");
|
||
|
var inputs = form.getElementsByTagName("input");
|
||
|
var cb;
|
||
|
for (var i=0; i<inputs.length; i++) {
|
||
|
cb = inputs[i];
|
||
|
if (cb.type == "checkbox") {
|
||
|
cb.checked = state;
|
||
|
}
|
||
|
}
|
||
|
return false;
|
||
|
}
|
||
|
|
||
|
-->
|
||
|
</script>
|
||
|
</head>
|
||
|
<body>
|
||
|
<div class="header">
|
||
|
<div class="title">Jala Unit Test Runner</div>
|
||
|
<div class="directory"><% test.directory prefix="Tests: " %></div>
|
||
|
</div>
|
||
|
<div class="main">
|
||
|
<div class="list">
|
||
|
<form id="tests" method="post" action="<% root.href action="jala.test" %>">
|
||
|
<% test.list prefix='<h4>Available Tests</h4><ul>'
|
||
|
suffix='<li><br /><input id="toggle" type="checkbox" onclick="toggleCheckboxes()" /><a href="#" onclick="toggleCheckboxes(true);">select all</a></li></ul><input class="submit" type="submit" name="run" value="Execute" />' %>
|
||
|
</form>
|
||
|
</div>
|
||
|
<div class="result">
|
||
|
<table class="statistics">
|
||
|
<tr>
|
||
|
<th>Tests</th>
|
||
|
<th>Functions</th>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td><span class="passed"><% test.testsRun %></span> run</td>
|
||
|
<td><span class="passed"><% test.functionsPassed %></span> passed</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td><span class="failed"><% test.testsFailed %></span> failed</td>
|
||
|
<td><span class="failed"><% test.functionsFailed %></span> failed</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
<% test.results %>
|
||
|
</div>
|
||
|
</div>
|
||
|
</body>
|
||
|
</html>
|
||
|
|
||
|
|
||
|
|
||
|
<% #result ------------------------------------------------------------------ %>
|
||
|
|
||
|
<h4 class="<% param.status %>">Results of '<% param.name %>':</h4>
|
||
|
<% param.log prefix="<dl>" suffix="</dl>" %>
|
||
|
|
||
|
|
||
|
|
||
|
<% #item -------------------------------------------------------------------- %>
|
||
|
|
||
|
<li>
|
||
|
<input type="checkbox" name="test" value="<% param.name %>" <% param.checked %>/><a href="?test=<% param.name %>"><% param.name %></a>
|
||
|
</li>
|
||
|
|
||
|
|
||
|
|
||
|
<% #logFailed --------------------------------------------------------------- %>
|
||
|
|
||
|
<dt class="test error">Error</dt>
|
||
|
<dd>
|
||
|
<% param.functionName prefix='<span class="function">' suffix='()</span>' %></span>
|
||
|
<div class="message"><% param.name suffix=": " %><% param.message %></div>
|
||
|
<div class="comment"><% param.comment %></div>
|
||
|
<div><% param.fileName prefix="at " %><% param.lineNumber prefix=":" %></div>
|
||
|
<div class="stackTrace"><% param.stackTrace encoding="html" %></div>
|
||
|
</dd>
|
||
|
|
||
|
|
||
|
|
||
|
<% #logPassed --------------------------------------------------------------- %>
|
||
|
|
||
|
<dt class="test passed">Passed</dt>
|
||
|
<dd><span class="function"><% param.functionName %>()</span><span class="elapsed">(in <% param.elapsed %> ms)</span></dd>
|
||
|
|
||
|
|
||
|
|
||
|
<% #stylesheet -------------------------------------------------------------- %>
|
||
|
|
||
|
body {
|
||
|
font-family: Verdana, Arial, Helvetica;
|
||
|
font-size: 0.85em;
|
||
|
margin: 0;
|
||
|
padding: 0;
|
||
|
}
|
||
|
|
||
|
a {
|
||
|
text-decoration: none;
|
||
|
color: #333;
|
||
|
}
|
||
|
|
||
|
a:hover {
|
||
|
text-decoration: underline;
|
||
|
}
|
||
|
|
||
|
div.header {
|
||
|
background-color: #aaa;
|
||
|
border-bottom: 1px solid #333;
|
||
|
font-size: 18px;
|
||
|
font-weight: bold;
|
||
|
color: #ddd;
|
||
|
padding: 10px 20px;
|
||
|
}
|
||
|
|
||
|
div.header div.title {
|
||
|
float: left;
|
||
|
font-size: 18px;
|
||
|
font-weight: bold;
|
||
|
color: #ddd;
|
||
|
}
|
||
|
|
||
|
div.header div.directory {
|
||
|
text-align: right;
|
||
|
font-size: 11px;
|
||
|
font-weight: normal;
|
||
|
color: #eee;
|
||
|
padding: 5px;
|
||
|
}
|
||
|
|
||
|
div.main {
|
||
|
margin: 20px;
|
||
|
}
|
||
|
|
||
|
div.footer {
|
||
|
margin-top: 400px;
|
||
|
padding: 10px 0 10px 20px;
|
||
|
clear: both;
|
||
|
background-color: #eee;
|
||
|
font-size: 0.7em;
|
||
|
color: #999;
|
||
|
}
|
||
|
|
||
|
div.list {
|
||
|
float: left;
|
||
|
width: 200px;
|
||
|
padding-right: 30px;
|
||
|
border-right: 1px solid #ccc;
|
||
|
}
|
||
|
|
||
|
div.list h4 {
|
||
|
margin: 0;
|
||
|
padding: 0 0 10px 0;
|
||
|
font-size: 1em;
|
||
|
}
|
||
|
|
||
|
div.list form {
|
||
|
margin: 0;
|
||
|
padding: 0;
|
||
|
}
|
||
|
|
||
|
div.list ul {
|
||
|
list-style-type: none;
|
||
|
margin: 0;
|
||
|
padding: 0;
|
||
|
}
|
||
|
|
||
|
div.list ul li {
|
||
|
padding: 0;
|
||
|
margin-top:1px;
|
||
|
font-size: 0.95em;
|
||
|
}
|
||
|
|
||
|
div.list .submit {
|
||
|
margin: 15px 0 0 0;
|
||
|
padding: 0 10px;
|
||
|
border: 1px solid gray;
|
||
|
}
|
||
|
|
||
|
div.result {
|
||
|
margin-left: 250px;
|
||
|
padding-left: 20px;
|
||
|
}
|
||
|
|
||
|
/** statistics **/
|
||
|
|
||
|
table.statistics {
|
||
|
xborder: 1px solid black;
|
||
|
border-collapse: collapse;
|
||
|
}
|
||
|
|
||
|
table.statistics th {
|
||
|
text-align: left;
|
||
|
font-size: 0.9em;
|
||
|
}
|
||
|
|
||
|
table.statistics td {
|
||
|
padding-right: 15px;
|
||
|
color: #666;
|
||
|
}
|
||
|
|
||
|
table.statistics span.passed {
|
||
|
color: #009900;
|
||
|
font-weight: bold;
|
||
|
}
|
||
|
|
||
|
table.statistics span.failed {
|
||
|
color: #cc0000;
|
||
|
font-weight: bold;
|
||
|
}
|
||
|
|
||
|
/** result formattings **/
|
||
|
|
||
|
div.result h4 {
|
||
|
font-size: 1em;
|
||
|
font-weight: bold;
|
||
|
border-top: 1px solid #ccc;
|
||
|
padding-top: 20px;
|
||
|
}
|
||
|
|
||
|
dt {
|
||
|
float: left;
|
||
|
}
|
||
|
|
||
|
dt.test {
|
||
|
width: 70px;
|
||
|
padding: 2px 10px;
|
||
|
}
|
||
|
|
||
|
dt.passed {
|
||
|
background-color:#33cc33;
|
||
|
font-size: 0.9em;
|
||
|
}
|
||
|
|
||
|
dt.error {
|
||
|
background-color:#cc0000;
|
||
|
color: #efefef;
|
||
|
font-size: 0.9em;
|
||
|
}
|
||
|
|
||
|
dd {
|
||
|
font-size: 0.95em;
|
||
|
margin: 0 0 10px 100px;
|
||
|
padding: 2px;
|
||
|
}
|
||
|
|
||
|
|
||
|
span.title, span.function {
|
||
|
width: 200px;
|
||
|
padding-right:10px;
|
||
|
}
|
||
|
|
||
|
span.function {
|
||
|
font-style: italic;
|
||
|
}
|
||
|
|
||
|
span.elapsed {
|
||
|
font-size: 0.9em;
|
||
|
}
|