OLD | NEW |
---|---|
(Empty) | |
1 <DOCTYPE html> | |
2 <title>Test media controls video keyboard navigation</title> | |
mlamouri (slow - plz ping)
2017/04/13 14:28:21
Can you move this file to media/controls/ (so we h
CJ
2017/04/14 21:56:45
Done.
| |
3 <script src="../resources/testharness.js"></script> | |
4 <script src="../resources/testharnessreport.js"></script> | |
5 <script src="media-file.js"></script> | |
6 <script src="media-controls.js"></script> | |
7 <video controls></video> | |
8 <script> | |
9 test(_ => { | |
10 assert_true('eventSender' in window); | |
11 }, 'eventSender required'); | |
12 | |
13 async_test(function(t) { | |
14 var video = document.querySelector("video"); | |
15 video.src = findMediaFile("video", "content/test"); | |
mlamouri (slow - plz ping)
2017/04/13 14:28:21
Note: when you move to media/controls/, you will h
CJ
2017/04/14 21:56:45
Done.
| |
16 assert_equals(video.volume, 1); | |
17 assert_equals(video.currentTime, 0); | |
18 | |
19 video.oncanplaythrough = t.step_func_done(function() { | |
20 | |
mlamouri (slow - plz ping)
2017/04/13 14:28:21
style: drop the empty line
CJ
2017/04/14 21:56:45
Done.
| |
21 // Focus the video. | |
22 video.focus(); | |
23 | |
24 // 'Enter' plays the video. | |
25 eventSender.keyDown("Enter"); | |
26 assert_false(video.paused); | |
27 | |
28 // 'Down' reduces volume. | |
29 eventSender.keyDown("ArrowDown"); | |
30 assert_less_than(video.volume, 1); | |
31 | |
32 // 'Up' increases volume. | |
33 eventSender.keyDown("ArrowUp"); | |
34 assert_equals(video.volume, 1); | |
35 | |
36 // 'Enter' again pauses the video. | |
37 eventSender.keyDown("Enter"); | |
38 assert_true(video.paused); | |
39 | |
40 // 'Space' also pauses/plays the video. | |
41 eventSender.keyDown(" "); | |
42 assert_false(video.paused); | |
43 | |
44 eventSender.keyDown(" "); | |
45 assert_true(video.paused); | |
46 | |
47 var cur = video.currentTime; | |
48 | |
49 // 'Right' scrubs the timeline forward. | |
50 // Used to move the timeline off the first frame which is neccessary to | |
51 // test 'Home', otherwise 'Home' is a no-op. | |
52 eventSender.keyDown("ArrowRight"); | |
53 assert_greater_than(video.currentTime, cur); | |
54 | |
55 // 'Home' sets the timeline to 0. | |
56 eventSender.keyDown("Home"); | |
57 assert_equals(video.currentTime, 0); | |
58 | |
59 // 'End' sets the timeline to end. | |
60 eventSender.keyDown("End"); | |
61 assert_equals(video.currentTime, video.duration); | |
62 | |
63 // 'Left' scrubs the timeline back. | |
64 eventSender.keyDown("ArrowLeft"); | |
65 assert_less_than(video.currentTime, video.duration); | |
66 }); | |
67 }); | |
68 </script> | |
OLD | NEW |