slurping css files inline
<!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">
<head>
<title>Test Report</title>
<link rel="stylesheet" type="text/css" href="file:/home/plusw/perl5/perlbrew/perls/perl-5.16.3/lib/site_perl/5.16.3/TAP/Formatter/HTML/default_page.css" /><link rel="stylesheet" type="text/css" href="file:/home/plusw/perl5/perlbrew/perls/perl-5.16.3/lib/site_perl/5.16.3/TAP/Formatter/HTML/default_report.css" />
<script type="text/javascript" src="file:/home/plusw/perl5/perlbrew/perls/perl-5.16.3/lib/site_perl/5.16.3/TAP/Formatter/HTML/jquery-1.4.2.min.js"></script><script type="text/javascript" src="file:/home/plusw/perl5/perlbrew/perls/perl-5.16.3/lib/site_perl/5.16.3/TAP/Formatter/HTML/jquery.tablesorter-2.0.3.min.js"></script><script type="text/javascript" src="file:/home/plusw/perl5/perlbrew/perls/perl-5.16.3/lib/site_perl/5.16.3/TAP/Formatter/HTML/default_report.js"></script>
<style type="text/css">
/******************************************************************************
* TAP-Formatter-HTML: default stylesheet for report page layout
* Separated from default_report.css by request so users only need to override
* and maintain one css file.
* Copyright (c) 2008-2010 Steve Purkis. All rights reserved.
* Released under the same terms as Perl itself.
*****************************************************************************/
html {
width: 100%;
height: 100%;
}
body {
font-family: Helvetica, Verdana, Arial, Tahoma;
font-size: small;
background-color: #efefef;
}
/******************************************************************************
* TAP-Formatter-HTML: default stylesheet for report body
* Copyright (c) 2008-2010 Steve Purkis. All rights reserved.
* Released under the same terms as Perl itself.
*****************************************************************************/
/******************************************************************************
/* The menu bar
*/
#menu {
display: none; /* hidden by default */
position: absolute;
left: 8px;
top: 8px;
padding: 2px;
font-size: small;
background-color: #eeffcc;
opacity: 0.5;
}
#menu ul {
margin: 0px;
padding: 5px;
}
#menu li {
text-decoration: none;
list-style: none;
display: block;
}
/******************************************************************************
/* The summary bar
*/
#summary {
position: relative;
padding: 2px 0 2 0;
width: 100%;
font-size: x-large;
text-align: center;
}
#summary.passed {
background-color: #99ff66;
border: 1px solid #00ff00;
}
#summary.failed {
background-color: #ff6450;
border: 1px solid #ff0000;
}
#summary a {
width: 100%;
display: block;
margin: 0;
padding: 0;
text-decoration: none;
color: #000000;
}
#summary a:hover {
text-decoration: none;
color: #6666aa;
}
/******************************************************************************
* The report detail section
*/
#detail {
margin-top: 5px;
width: 100%;
}
table.detail {
width: 100%;
border: 1px solid #3333ee;
padding: 2px;
border-spacing: 0px;
}
table.detail th {
border-bottom: 2px solid #3333ee;
padding-top: 2px;
}
table.detail tfoot tr td {
border-top: 2px solid #3333ee;
padding-top: 2px;
}
table.detail td {
position: relative;
top: 0px;
left: 0px;
border-top: 1px solid #aaaaaa;
margin: 0;
padding: 2px 0 2 0;
vertical-align: top;
}
table.detail td.file {
font-size: small;
}
/*
table.detail tr.failed td.file {
background-color: #FF6450;
}
*/
/******************************************************************************
* Test detail: sortable column headers (requires jquery.tablesort plugin)
*/
th.header {
}
th.header:after {
font-size: 0.6em;
content: " ^v";
}
th.headerSortUp {
background-color: #ffffcc;
}
th.headerSortUp:after {
font-size: 0.6em;
content: " /\\";
}
th.headerSortDown {
background-color: #ffffcc;
}
th.headerSortDown:after {
font-size: 0.6em;
content: " \\/";
}
/******************************************************************************
* The file column
*/
table.detail td.file {
width: 10%;
padding-left: 2px;
padding-right: 4px;
}
a.file {
display: block;
margin: 0;
padding: 0;
width: 100%;
height: 100%;
text-decoration: none;
color: #3333cc;
}
a.file:hover {
text-decoration: none;
color: #6666ee;
}
a.file:visited {
text-decoration: none;
color: #3333cc;
}
div.back-up {
position: relative;
text-align: center;
border: 1px solid grey;
width: 100%;
}
/******************************************************************************
* The time column
*/
table.detail td.time {
width: 2%;
border-left: 1px solid #ddddff;
text-align: center;
font-size: small;
}
/******************************************************************************
* The percentage column
*/
table.detail td.percent {
padding-left: 2px;
padding-right: 2px;
width: 2%;
text-align: center;
font-size: small;
vertical-align: middle;
}
/******************************************************************************
* Colouring the file + percentage columns
*/
table.detail tr.percent td.c {
padding-left: 2px;
padding-right: 2px;
width: 2%;
text-align: center;
font-size: small;
vertical-align: middle;
}
table.detail tr.passed td.c {
border: 1px solid #99cc99;
}
table.detail tr.passed td.cb {
background-color: #99ff66;
}
table.detail tr.todo-passed td.c {
border: 1px solid #99cc99;
}
table.detail tr.todo-passed td.cb {
background-color: #ddffbb;
}
table.detail tr.severity-very-low td.c {
border: 1px solid #ffee33;
background-color: #ffffaa;
}
table.detail tr.severity-low td.c {
border: 1px solid #eecc33;
background-color: #ffdd99;
}
table.detail tr.severity-med td.c {
border: 1px solid #dd6633;
background-color: #ffaa77;
}
table.detail tr.severity-high td.c {
border: 1px solid #ff3333;
background-color: #ff8866;
}
table.detail tr.severity-very-high td.c {
border: 1px solid #ff0000;
background-color: #ff6450;
}
/******************************************************************************
* The test run column
*/
/******************************************************************************
* Test summaries (.TS)
*/
table.TS {
clear: both;
width: 100%;
height: 10px;
font-size: 8px; /* safari wants this less than 10px */
margin: 0px;
margin-bottom: 4px;
padding: 0;
border-spacing: 1px;
}
table.TS td {
margin: 0;
padding: 0;
height: 10px;
}
table.TS td a {
display: block;
margin: 0;
padding: 0;
text-decoration: none;
width: 100%;
height: 100%;
}
/* base for passed/failed (should always be lower precedent in class list!) */
table.TS td.p { /* p=passed */
border: 1px solid #66cc33;
background-color: #99ff66;
}
table.TS td.f { /* f=failed */
border: 1px solid #ff0000;
background-color: #ff6450;
}
/* overrides for specific outcomes */
table.TS td.k { /* k=ok */
border: 1px solid #66cc33;
}
table.TS td.n { /* n=not-ok */
border: 1px solid #ff0000;
}
table.TS td.u { /* u=todo-ok = 'unexpected' ok */
border: 1px solid #eeaa00;
background-color: #ffcc00;
}
table.TS td.t { /* t=todo-not-ok */
border: 1px solid #99cc99;
background-color: #ddffbb;
}
table.TS td.s { /* s=skip-ok */
border: 1px solid #99d999;
background-color: #99cc66;
}
/******************************************************************************
* Test detail
*/
div.test-detail {
margin: 0;
padding: 0;
/* display: none; /* let JS handle this... */
}
/******************************************************************************
* Test parse errors
*/
ul.parse-errors {
margin: 0;
padding: 0;
clear: left;
}
ul.parse-errors li {
margin-left: 4px;
list-style: none;
color: red;
}
/******************************************************************************
* Test output
*/
ul.test-out {
margin: 0;
padding: 0;
clear: left;
}
ul.test-out li {
margin-left: 4;
border-left: none;
list-style: none;
}
ul.test-out li.k { /* k=ok */
;
}
ul.test-out li.n { /* n=not-ok */
color: #ff0000;
}
ul.test-out li.u { /* u=todo-ok = 'unexpected' ok */
color: #cc3333;
}
ul.test-out li.t { /* t=todo-not-ok */
color: #773322;
}
ul.test-out li.s { /* s=skip-ok */
color: #001111;
}
ul.test-out li.tst {
;
}
ul.test-out li.cmt {
color: #666666;
font-family: monospace;
}
ul.test-out li.pln {
color: blue;
}
ul.test-out li.unp { /* unp=unplanned */
color: #ff0000;
}
ul.test-out li.unk { /* unk=unknown */
color: #996600;
font-family: monospace;
}
ul.test-out li.stat { /* stat=exit-status */
color: #ff0000;
}
ul.test-out li.yml { /* yml=yaml */
white-space: pre;
}
</style>
</head>
<body>
<div id="summary" class="passed">
<a href="#" title="Test Summary (100.0% ok)
passed 33/33 tests in 4 files
total time: 0.01s
0 wallclock secs ( 0.00 usr + 0.00 sys = 0.00 CPU)">PASSED</a>
</div>
<div id="menu">
<ul>
<li>
<span id="show-all"><a href="#" title="show all tests">show all</a></span>
<span id="show-failed"><a href="#" title="show failed tests only">show failed</a></span>
</li>
</ul>
</div>
<div id="detail">
<table class="detail">
<thead>
<tr>
<th class="file">Test file</th>
<th class="results">Test results</th>
<th class="time">Time</th>
<th class="percent">%</th>
</tr>
</thead>
<tfoot>
<tr>
<td class="file">4 files</td>
<td class="results">
33 tests,
33 ok,
0 failed,
0 todo,
0 skipped,
0 parse errors<br/>
exit status: 0,
wait status: 0<br/>
elapsed time: 0 wallclock secs ( 0.00 usr + 0.00 sys = 0.00 CPU)</td>
<td class="time">0.01s</td>
<td class="percent ">100.0%</td>
</tr>
</tfoot>
<tbody>
<tr class="test-run passed" id="t-00-load-t">
<td class="file c">
<a class="file" href="#" title="Test ok.
2 planned, 2 run
2 ok, 0 failed
0 todo, 0 skipped
exit status: 0
wait status: 0">t/00_load.t</a>
</td>
<td class="results">
<table class="TS">
<tr>
<td class="k p"><a class="TS" href="#t0"> </a></td>
<td class="k p"><a class="TS" href="#t1"> </a></td>
</tr>
</table>
<div class="test-detail">
<ul class="test-out">
<li class="pln">1..2 </li>
<li id="t0" class="tst k">ok 1 - use VM::JiffyBox; </li>
<li id="t1" class="tst k">ok 2 - use VM::JiffyBox::Box; </li>
</ul>
</div>
</td>
<td class="time">0.00s</td>
<td class="percent c cb">100.0%</td>
</tr>
<tr class="test-run passed" id="t-01-create-t">
<td class="file c">
<a class="file" href="#" title="Test ok.
8 planned, 8 run
8 ok, 0 failed
0 todo, 0 skipped
exit status: 0
wait status: 0">t/01_create.t</a>
</td>
<td class="results">
<table class="TS">
<tr>
<td class="k p"><a class="TS" href="#t2"> </a></td>
<td class="k p"><a class="TS" href="#t3"> </a></td>
<td class="k p"><a class="TS" href="#t4"> </a></td>
<td class="k p"><a class="TS" href="#t5"> </a></td>
<td class="k p"><a class="TS" href="#t6"> </a></td>
<td class="k p"><a class="TS" href="#t7"> </a></td>
<td class="k p"><a class="TS" href="#t8"> </a></td>
<td class="k p"><a class="TS" href="#t9"> </a></td>
</tr>
</table>
<div class="test-detail">
<ul class="test-out">
<li class="pln">1..8 </li>
<li id="t2" class="tst k">ok 1 - VM::JiffyBox->can('new') </li>
<li id="t3" class="tst k">ok 2 - Die if no token </li>
<li id="t4" class="tst k">ok 3 - The object isa VM::JiffyBox </li>
<li id="t5" class="tst k">ok 4 - Check Token </li>
<li id="t6" class="tst k">ok 5 - VM::JiffyBox->can('get_vm') </li>
<li id="t7" class="tst k">ok 6 - Die if no ID </li>
<li id="t8" class="tst k">ok 7 - Check ID </li>
<li id="t9" class="tst k">ok 8 - Check Token @ Box </li>
</ul>
</div>
</td>
<td class="time">0.00s</td>
<td class="percent c cb">100.0%</td>
</tr>
<tr class="test-run passed" id="t-03-need-to-die-t">
<td class="file c">
<a class="file" href="#" title="Test ok.
8 planned, 8 run
8 ok, 0 failed
0 todo, 0 skipped
exit status: 0
wait status: 0">t/03_need_to_die.t</a>
</td>
<td class="results">
<table class="TS">
<tr>
<td class="k p"><a class="TS" href="#t10"> </a></td>
<td class="k p"><a class="TS" href="#t11"> </a></td>
<td class="k p"><a class="TS" href="#t12"> </a></td>
<td class="k p"><a class="TS" href="#t13"> </a></td>
<td class="k p"><a class="TS" href="#t14"> </a></td>
<td class="k p"><a class="TS" href="#t15"> </a></td>
<td class="k p"><a class="TS" href="#t16"> </a></td>
<td class="k p"><a class="TS" href="#t17"> </a></td>
</tr>
</table>
<div class="test-detail">
<ul class="test-out">
<li class="pln">1..8 </li>
<li id="t10" class="tst k">ok 1 - VM::JiffyBox->can('create_vm') </li>
<li id="t11" class="tst k">ok 2 - die if no args </li>
<li id="t12" class="tst k">ok 3 - die if no image </li>
<li id="t13" class="tst k">ok 4 - die if no planid </li>
<li id="t14" class="tst k">ok 5 - die if no name </li>
<li id="t15" class="tst k">ok 6 - die if 2 images </li>
<li id="t16" class="tst k">ok 7 - live 1 </li>
<li id="t17" class="tst k">ok 8 - live 2 </li>
</ul>
</div>
</td>
<td class="time">0.00s</td>
<td class="percent c cb">100.0%</td>
</tr>
<tr class="test-run passed" id="t-05-box-requests-t">
<td class="file c">
<a class="file" href="#" title="Test ok.
15 planned, 15 run
15 ok, 0 failed
0 todo, 0 skipped
exit status: 0
wait status: 0">t/05_box-requests.t</a>
</td>
<td class="results">
<table class="TS">
<tr>
<td class="k p"><a class="TS" href="#t18"> </a></td>
<td class="k p"><a class="TS" href="#t19"> </a></td>
<td class="k p"><a class="TS" href="#t20"> </a></td>
<td class="k p"><a class="TS" href="#t21"> </a></td>
<td class="k p"><a class="TS" href="#t22"> </a></td>
<td class="k p"><a class="TS" href="#t23"> </a></td>
<td class="k p"><a class="TS" href="#t24"> </a></td>
<td class="k p"><a class="TS" href="#t25"> </a></td>
<td class="k p"><a class="TS" href="#t26"> </a></td>
<td class="k p"><a class="TS" href="#t27"> </a></td>
<td class="k p"><a class="TS" href="#t28"> </a></td>
<td class="k p"><a class="TS" href="#t29"> </a></td>
<td class="k p"><a class="TS" href="#t30"> </a></td>
<td class="k p"><a class="TS" href="#t31"> </a></td>
<td class="k p"><a class="TS" href="#t32"> </a></td>
</tr>
</table>
<div class="test-detail">
<ul class="test-out">
<li id="t18" class="tst k">ok 1 - false URL for get_details (non-historic) </li>
<li id="t19" class="tst k">ok 2 - URL for get_details (non-historic) </li>
<li id="t20" class="tst k">ok 3 - URL for stop (non-historic) </li>
<li id="t21" class="tst k">ok 4 - JSON for stop (non-historic) </li>
<li id="t22" class="tst k">ok 5 - URL for delete (non-historic) </li>
<li id="t23" class="tst k">ok 6 - URL for get_backups (non-historic) </li>
<li id="t24" class="tst k">ok 7 - URL for start (non-historic) </li>
<li id="t25" class="tst k">ok 8 - JSON for start (non-historic) </li>
<li id="t26" class="tst k">ok 9 - URL for get_details (historic) </li>
<li id="t27" class="tst k">ok 10 - URL for stop (historic) </li>
<li id="t28" class="tst k">ok 11 - JSON for stop (historic) </li>
<li id="t29" class="tst k">ok 12 - URL for delete (historic) </li>
<li id="t30" class="tst k">ok 13 - URL for get_backups (historic) </li>
<li id="t31" class="tst k">ok 14 - URL for start (historic) </li>
<li id="t32" class="tst k">ok 15 - JSON for start (historic) </li>
<li class="pln">1..15 </li>
</ul>
</div>
</td>
<td class="time">0.01s</td>
<td class="percent c cb">100.0%</td>
</tr>
</tbody>
</table>
</div>
<div id="footer">Generated by TAP::Formatter::HTML v0.11 @ 16:17:26 05-Jul-2013</div>
</body>
</html>
TAP::Formatter::HTML=HASH(0x1800ab8)