diff options
author | Clark Laughlin <clark.laughlin@linaro.org> | 2015-05-27 13:38:53 -0400 |
---|---|---|
committer | Clark Laughlin <clark.laughlin@linaro.org> | 2015-05-27 13:38:53 -0400 |
commit | aacf228fa336220d64ff35a506425344dd67ad1c (patch) | |
tree | 1454d93c4e3832d524c70fac3d9fefd3fd3bba60 | |
parent | 58b1dcbf85f5ecd94589484fe14070619d9adcc0 (diff) |
improvements to results display -- test lists in sortable/filterable tables now
-rw-r--r-- | web-app/static/detail.html | 109 | ||||
-rw-r--r-- | web-app/static/index.html | 4 |
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> |