summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/remote-playback/state-attribute-changes-when-selecting-device-manual.html
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/remote-playback/state-attribute-changes-when-selecting-device-manual.html')
-rw-r--r--testing/web-platform/tests/remote-playback/state-attribute-changes-when-selecting-device-manual.html53
1 files changed, 53 insertions, 0 deletions
diff --git a/testing/web-platform/tests/remote-playback/state-attribute-changes-when-selecting-device-manual.html b/testing/web-platform/tests/remote-playback/state-attribute-changes-when-selecting-device-manual.html
new file mode 100644
index 0000000000..90f51af1d7
--- /dev/null
+++ b/testing/web-platform/tests/remote-playback/state-attribute-changes-when-selecting-device-manual.html
@@ -0,0 +1,53 @@
+<!DOCTYPE html>
+<html>
+ <title>
+ Test that the remote playback state changes when selecting a device
+ </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!
+ </p>
+ <button id="prompt-button">Pick 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 => {
+ assert_equals(v.remote.state, "disconnected");
+
+ function callback(available) {
+ promise_test(() => {
+ return v.remote.prompt().then(
+ t.step_func(() => {
+ assert_equals(v.remote.state, "connecting");
+ })
+ );
+ }, "Prompt call resolves");
+ }
+
+ let button = document.getElementById("prompt-button");
+ button.onclick = () => {
+ v.remote.watchAvailability(t.step_func_done(callback)).then(
+ t.step_func(() => {}),
+ t.unreached_func()
+ );
+ };
+ }, "Test that the remote playback state changes when selecting a device.");
+ </script>
+</html>