summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClark Laughlin <clark.laughlin@linaro.org>2015-05-27 13:38:53 -0400
committerClark Laughlin <clark.laughlin@linaro.org>2015-05-27 13:38:53 -0400
commitaacf228fa336220d64ff35a506425344dd67ad1c (patch)
tree1454d93c4e3832d524c70fac3d9fefd3fd3bba60
parent58b1dcbf85f5ecd94589484fe14070619d9adcc0 (diff)
improvements to results display -- test lists in sortable/filterable tables now
-rw-r--r--web-app/static/detail.html109
-rw-r--r--web-app/static/index.html4
2 files changed, 74 insertions, 39 deletions
diff --git a/web-app/static/detail.html b/web-app/static/detail.html
index 7d9c872..8201aea 100644
--- a/web-app/static/detail.html
+++ b/web-app/static/detail.html
@@ -1,21 +1,33 @@
<html>
<head>
- <link href='http://fonts.googleapis.com/css?family=Merriweather+Sans:400,700' rel='stylesheet' type='text/css'>
+ <link href='http://fonts.googleapis.com/css?family=Merriweather+Sans:200,700' rel='stylesheet' type='text/css'>
<link href='http://code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css' rel='stylesheet' type='text/css'>
+ <link href='http://cdn.datatables.net/1.10.7/css/jquery.dataTables.css' rel='stylesheet' type='text/css'>
- <script type='text/javascript' src="http://code.jquery.com/jquery-2.1.4.min.js"></script>
- <script type='text/javascript' src="http://code.jquery.com/ui/1.11.4/jquery-ui.min.js"></script>
- <script type='text/javascript' src="http://canvasjs.com/assets/script/canvasjs.min.js"></script>
-
+ <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
+ <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script>
+ <script type="text/javascript" src="https://cdn.datatables.net/1.10.7/js/jquery.dataTables.min.js"></script>
<style>
- h1,h2,h3 { font-family: ‘Merriweather Sans’, Arial, serif; font-weight: 700; }
- BODY { font-family: ‘Merriweather Sans’, Arial, serif; font-weight: 400; }
+ h1,h2,h3 { font-family: ‘Merriweather Sans’, Arial, serif; font-weight: 700; }
+ BODY { font-family: ‘Merriweather Sans’, Arial, serif; font-weight: 200; }
+ TABLE { font-size: 90%; }
+ td.details-control {
+ background: url('https://www.datatables.net/examples/resources/details_open.png') no-repeat center center;
+ cursor: pointer;
+ }
+ tr.shown td.details-control {
+ background: url('https://www.datatables.net/examples/resources/details_close.png') no-repeat center center;
+ }
</style>
<script type="text/javascript" src="util.js"></script>
<script type="text/javascript" src="chart.js"></script>
<script type="text/javascript">
+function format ( d ) {
+ return d["t.start_time"];
+}
+
$(function() {
params = parse_query(window.location.search);
@@ -38,26 +50,49 @@ $(function() {
$("#total_tests").text(item["t.all_tests"]);
});
- // get the list of failed tests
- failing_tests = $('#failing_tests_list');
- $.getJSON("/results/tempest/job/" + job + "/failures", function(data) {
- data.forEach(function(value, index) {
- $('<span>').text(value["t.name"]).appendTo(failing_tests);
- $('<h4>').text("stack trace... TODO").appendTo(failing_tests);
- });
-
- failing_tests.accordion({
- collapsible: true,
- animate: 100,
- header: "h4"
- })
+ var table1 = $('#failing_tests_table').DataTable( {
+ "ajax": { "dataSrc" : "", "url" : "/results/tempest/job/" + job + "/failures" },
+ "columns": [
+ {
+ "className": 'details-control',
+ "orderable": false,
+ "data": null,
+ "defaultContent": ''
+ },
+ { "title" : "Test Class", "data" : "t\\.test_class" },
+ { "title" : "Test Name", "data" : "t\\.name" } /*,
+ { "title" : "Start Time", "data" : "t\\.start_time" },
+ { "title" : "Stop Time", "data" : "t\\.stop_time" }*/
+ ],
+ "order": [[2, 'asc']]
});
- // get the list of skipped tests
- $.getJSON("/results/tempest/job/" + job + "/skipped", function(data) {
- data.forEach(function(value, index) {
- $('<li>').text(value["t.name"]).appendTo($('#skipped_tests_list'));
- });
+ // Add event listener for opening and closing details
+ $('#failing_tests_table tbody').on('click', 'td.details-control', function () {
+ var tr = $(this).closest('tr');
+ var row = table1.row( tr );
+
+ if ( row.child.isShown() ) {
+ // This row is already open - close it
+ row.child.hide();
+ tr.removeClass('shown');
+ }
+ else {
+ // Open this row
+ row.child( format(row.data()) ).show();
+ tr.addClass('shown');
+ }
+ });
+
+ var table2 = $('#skipped_tests_table').DataTable( {
+ "ajax": { "dataSrc" : "", "url" : "/results/tempest/job/" + job + "/skipped" },
+ "columns": [
+ { "title" : "Test Class", "data" : "t\\.test_class" },
+ { "title" : "Test Name", "data" : "t\\.name" } /*,
+ { "title" : "Start Time", "data" : "t\\.start_time" },
+ { "title" : "Stop Time", "data" : "t\\.stop_time" }*/
+ ],
+ "order": [[1, 'asc']]
});
});
@@ -69,30 +104,30 @@ $(function() {
<h1><img style="vertical-align: middle; width: 150px" src="http://www.linaro.org/app/images/linaro-logo-web.png"/>
Openstack CI</h1>
-<h2>Tempest Run <span id="lava_job"></span> (<span id="date"></span>)</h2>
+<h2>Tempest Run - LAVA Job <span id="lava_job"></span> (<span id="date"></span>)</h2>
<table>
-<tr><td>Tested Branch:</td><td><span id="branch"></span></td></tr>
-<tr><td>OS Distro:</td><td><span id="os_distro"></span></td></tr>
-<tr><td>OS Version:</td><td><span id="os_version"></span></td></tr>
+<tr><td>Tested Branch:</td><td><strong><span id="branch"></span></strong></td></tr>
+<tr><td>OS Distro / Version:</td><td><strong><span id="os_distro"></span> / <span id="os_version"></span></strong></td></tr>
</table>
+<h2>Summary</h2>
+
<table>
-<tr><td>Passing Tests:</td><td><span id="passing_tests"></span></td></tr>
-<tr><td>Failing Tests:</td><td><span id="failing_tests"></span></td></tr>
-<tr><td>Skipped tests:</td><td><span id="skipped_tests"></span></td></tr>
-<tr><td>Total Tests:</td><td><span id="total_tests"></span></td></tr>
+<tr><td>Passing Tests:</td><td><strong><span id="passing_tests"></span></strong></td></tr>
+<tr><td>Failing Tests:</td><td><strong><span id="failing_tests"></span></strong></td></tr>
+<tr><td>Skipped tests:</td><td><strong><span id="skipped_tests"></span></strong></td></tr>
+<tr><td>Total Tests:</td><td><strong><span id="total_tests"></span></strong></td></tr>
</table>
-<p>
+<h2>Logs</h2>
Click here to view the log output: <span id="lava_job"></span>
-</p>
<h3>Failing Tests</h3>
-<div id="failing_tests_list"></div>
+<table id="failing_tests_table" class="display" cellspacing="0" width="100%"></table>
<h3>Skipped Tests</h3>
-<div id="skipped_tests_list"></div>
+<table id="skipped_tests_table" class="display" cellspacing="0" width="100%"></table>
</body>
</html>
diff --git a/web-app/static/index.html b/web-app/static/index.html
index 2fa5546..a00a2c8 100644
--- a/web-app/static/index.html
+++ b/web-app/static/index.html
@@ -1,6 +1,6 @@
<html>
<head>
- <link href='http://fonts.googleapis.com/css?family=Merriweather+Sans:400,700' rel='stylesheet' type='text/css'>
+ <link href='http://fonts.googleapis.com/css?family=Merriweather+Sans:200,700' rel='stylesheet' type='text/css'>
<link href='http://code.jquery.com/ui/1.11.4/themes/overcast/jquery-ui.css' rel='stylesheet' type='text/css'>
<script type='text/javascript' src="http://code.jquery.com/jquery-2.1.4.min.js"></script>
@@ -9,7 +9,7 @@
<style>
h1,h2,h3 { font-family: ‘Merriweather Sans’, Arial, serif; font-weight: 700; }
- BODY { font-family: ‘Merriweather Sans’, Arial, serif; font-weight: 400; }
+ BODY { font-family: ‘Merriweather Sans’, Arial, serif; font-weight: 200; font-size: 90%; }
</style>
<script type="text/javascript" src="util.js"></script>