1424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)// Copyright (c) 2013 The Chromium Authors. All rights reserved. 2424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 3424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)// found in the LICENSE file. 4424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) 5424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)function addTests() { 6424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) function getNaClTimeMs() { 7424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) return parseFloat(document.getElementById('NaCl').textContent); 8424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) } 9424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) 10424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) function getRoundTimeMs() { 11424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) return parseFloat(document.getElementById('Round').textContent); 12424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) } 13424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) 14424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) function getTotalTimeMs() { 15424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) return parseFloat(document.getElementById('Total').textContent); 16424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) } 17424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) 18424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) function delayTest(test, delayMs) { 19424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) test.log('Setting delay to ' + delayMs + 'ms'); 20424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) document.getElementById('delay').value = delayMs; 21424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) 22424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) test.log('Clicking start.'); 23424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) var startEl = document.getElementById('start'); 24424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) startEl.dispatchEvent(new CustomEvent('click')); 25424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) 26424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) test.log('Waiting 1 second for test to finish.'); 27424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) var intervalId = window.setInterval(function() { 28424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) if (itrCount !== itrMax) { 29424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) test.log('Not finished, waiting another second.'); 30424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) return; 31424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) } 32424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) 33424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) window.clearInterval(intervalId); 34424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) test.log('NaCl time: ' + getNaClTimeMs().toFixed(2) + 'ms'); 35424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) test.log('Roundtrip time: ' + getRoundTimeMs().toFixed(2) + 'ms'); 36424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) test.log('Total time: ' + getTotalTimeMs().toFixed(2) + 'ms'); 37424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) test.log('Finished.'); 38424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) test.pass(); 39424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) }, 1000); 40424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) } 41424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) 42424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) common.tester.addAsyncTest('delay_0', function(test) { 43424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) var delayMs = 0; 44424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) delayTest(test, delayMs); 45424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) }); 46424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) 47424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) common.tester.addAsyncTest('delay_3', function(test) { 48424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) var delayMs = 3; 49424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) delayTest(test, delayMs); 50424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) }); 51424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)} 52