15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/** 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * Copyright (c) 2012 The Chromium Authors. All rights reserved. 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * Use of this source code is governed by a BSD-style license that can be 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * found in the LICENSE file. 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) **/ 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)window.onload = function() { 85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) var classes = {true: 'success', false: 'failure'}; 95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) var status = document.querySelector('.status'); 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) var summary = document.querySelector('.summary'); 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) var execution = summary.querySelector('.execution'); 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) var count = execution.querySelector('.count'); 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) var duration = execution.querySelector('.duration'); 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) var results = summary.querySelector('.results'); 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) var passed = results.querySelector('.passed'); 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) var failed = results.querySelector('.failed'); 175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) var browser = document.querySelector('.browser'); 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) var details = document.querySelector('.details ol'); 195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) var start = Date.now(); 205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) var run = window.runTests(false); 215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) var end = Date.now(); 225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) var counts = {passed: 0, failed: 0}; 235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) var tests = []; 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) var step; 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) for (var i = 0; i < run.tests.length; ++i) { 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tests[i] = document.createElement('li'); 275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tests[i].setAttribute('class', classes[run.tests[i].success]); 285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tests[i].appendChild(document.createElement('p')); 295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tests[i].children[0].textContent = run.tests[i].name; 305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tests[i].appendChild(document.createElement('ol')); 315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) counts.passed += run.tests[i].success ? 1 : 0; 325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) counts.failed += run.tests[i].success ? 0 : 1; 335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) for (var j = 0; j < run.tests[i].steps.length; ++j) { 345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) step = document.createElement('li'); 355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tests[i].children[1].appendChild(step); 365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) step.setAttribute('class', classes[run.tests[i].steps[j].success]); 375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) step.appendChild(document.createElement('p')); 385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) step.children[0].textContent = run.tests[i].steps[j].messages[0]; 395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) for (var k = 1; k < run.tests[i].steps[j].messages.length; ++k) { 405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) step.appendChild(document.createElement('p')); 415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) step.children[k].textContent = run.tests[i].steps[j].messages[k]; 425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) step.children[k].setAttribute('class', 'difference'); 435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) status.setAttribute('class', 'status ' + classes[run.success]); 475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) count.textContent = run.tests.length; 485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) duration.textContent = end - start; 495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) passed.textContent = counts.passed; 505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) passed.setAttribute('class', counts.passed ? 'passed' : 'passed none'); 515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) failed.textContent = counts.failed; 525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) failed.setAttribute('class', counts.failed ? 'failed' : 'failed none'); 535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) browser.textContent = window.navigator.userAgent; 545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) tests.forEach(function(test) { details.appendChild(test); }); 555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 56