Source code

Revision control

Copy as Markdown

Other Tools

<!DOCTYPE html>
<html>
<title>
Test that all event handlers are called when a remote playback device is connected
</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/common/media.js"></script>
<script>
setup({ explicit_timeout: true });
</script>
<body>
<div id="prep">
<p>Please make sure a device for remote playback is <b>available.</b></p>
<button id="prompt-button-prep">Show devices</button>
<button id="start-button">Start test</button>
</div>
<div id="pick-device" style="display: none">
<p>
Click the button below to prompt for a remote playback device and select
one! After connecting to the device, please click again and disconnect
from device.
</p>
<button id="prompt-button">Pick device</button>
<button id="disconnect-button" style="display: none">
Disconnect device
</button>
</div>
</body>
<script src="./prepare-device.js"></script>
<script>
let v = document.createElement("video");
v.src = getVideoURI("/media/movie_5");
async_test(t => {
let promptButton = document.getElementById("prompt-button");
let disconnectButton = document.getElementById("disconnect-button");
const w = new EventWatcher(t, v.remote, ['connecting', 'connect', 'disconnect']);
w.wait_for(['connecting', 'connect', 'disconnect']).then(t.step_func_done());
promptButton.onclick = () => {
promise_test(() => {
return v.remote.prompt().then(() => {
promptButton.style.display = "none";
disconnectButton.style.display = "inline";
});
}, "Prompt to connect to the device");
};
disconnectButton.onclick = () => {
promise_test(() => {
return v.remote.prompt()
}, "Prompt to disconnect from the device")
};
}, "Test that all event handlers are called when a remote playback device is connected.");
</script>
</html>