| <!-- |
| Copyright 2013 The Chromium Authors |
| Use of this source code is governed by a BSD-style license that can be |
| found in the LICENSE file. |
| |
| A web page intended for both manual and automated end-to-end testing of |
| the Hangout Services component extension and the APIs it uses. |
| --> |
| <html> |
| <head> |
| <title>Hangout Services Test Page</title> |
| <script src="hangout_services_test.js"> |
| </script> |
| <script> |
| // |
| // UI glue and other code that needs to use the document. Leaving in |
| // HTML file with the UI elements it is using. |
| // |
| |
| // Populates UI elements with initial contents. |
| function populate() { |
| navigator.mediaDevices.enumerateDevices().then(populateSources); |
| } |
| |
| function populateSources(devices) { |
| var select = document.getElementById('selectSource'); |
| for (var i = 0; i < devices.length; ++i) { |
| var device = devices[i]; |
| if (device.kind == 'audioinput') { |
| var option = document.createElement('option'); |
| option.value = device.deviceId; |
| option.text = device.label + ' (' + device.deviceId + ')'; |
| select.add(option); |
| } |
| } |
| } |
| |
| // Browser test scaffolding. Starts the test run from a browser |
| // test. Sets the document title to 'success' or 'failure' when the |
| // test completes. |
| function browsertestRunAllTests() { |
| runAllTests(function(results) { |
| if (results == '') { |
| document.title = 'success'; |
| } else { |
| console.log('Test failed:'); |
| console.log(results); |
| document.title = 'failure'; |
| } |
| }); |
| } |
| </script> |
| </head> |
| <body onload="populate()"> |
| <audio id="audio" src="long_audio.ogg" controls autoplay></audio> |
| <br/> |
| |
| <p> |
| Run all automated tests manually (empty results indicate success): |
| <input type="submit" value="Run" |
| onclick="runAllTests(function(results) { alert('Results:\n' + |
| results); });"><br/> |
| </body> |
| </html> |