Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Side by Side Diff: third_party/WebKit/LayoutTests/media/video-controls-mouse-events-captured.html

Issue 2114393002: Convert video-controls-[mouse, muted, no]* tests to testharness.js (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | third_party/WebKit/LayoutTests/media/video-controls-mouse-events-captured-expected.txt » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <html> 2 <title>This tests that a mouse/keyboard event on the controls will not be seen b y the video element.</title>
3 <head> 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 async_test(function(t) {
10 var video = document.querySelector("video");
4 11
5 </head> 12 video.onclick = t.unreached_func();
6 <body> 13 video.ondblclick = t.unreached_func();
7 <video controls></video> 14 video.onmousedown = t.unreached_func();
8 <p>This tests that a mouse events on the controls will not be seen by the vi deo element.</p> 15 video.onmouseup = t.unreached_func();
9 <p>Also tests keyboard input.</p> 16 video.onkeydown = t.unreached_func();
10 <script src=media-file.js></script>
11 <!-- TODO(foolip): Convert test to testharness.js. crbug.com/588956
12 (Please avoid writing new tests using video-test.js) -->
13 <script src=video-test.js></script>
14 <script src=media-controls.js></script>
15 <script>
16 waitForEventAndFail("click");
17 waitForEventAndFail("dblclick");
18 waitForEventAndFail("mousedown");
19 waitForEventAndFail("mouseup");
20 waitForEventAndFail("keydown");
21 17
22 waitForEventAndEnd("loadeddata", function() 18 video.onloadeddata = t.step_func_done(function() {
23 { 19 // click the play button.
24 if (window.eventSender) { 20 var coords = mediaControlsButtonCoordinates(video, "play-button");
25 // click the play button 21 eventSender.mouseMoveTo(coords[0], coords[1]);
26 var coords = mediaControlsButtonCoordinates(video, "play-button" ); 22 sendMouseAndKeyEvents();
27 eventSender.mouseMoveTo(coords[0], coords[1]);
28 23
29 eventSender.mouseDown(); 24 // Click the current time display, which should not respond to events,
30 eventSender.mouseUp(); 25 // but should still capture them.
31 eventSender.keyDown('A'); 26 coords = mediaControlsButtonCoordinates(video, "current-time-display");
27 eventSender.mouseMoveTo(coords[0], coords[1]);
28 sendMouseAndKeyEvents();
32 29
33 // Click the current time display, which should not respond to e vents, but 30 // Click the timeline - this tests that multilevel shadow DOM elements w ork.
34 // should still capture them 31 coords = mediaControlsButtonCoordinates(video, "timeline");
35 coords = mediaControlsButtonCoordinates(video, "current-time-dis play"); 32 eventSender.mouseMoveTo(coords[0], coords[1]);
36 eventSender.mouseMoveTo(coords[0], coords[1]); 33 sendMouseAndKeyEvents();
37 34
38 eventSender.mouseDown(); 35 // If we're not dragging, then we should get a mousemove.
39 eventSender.mouseUp(); 36 var mouseMoveEventCount = 0;
40 eventSender.keyDown('A'); 37 video.onmousemove = t.step_func(function() {
38 mouseMoveEventCount++;
39 });
41 40
42 // Click the timeline - this tests that multilevel shadow DOM el ements work 41 eventSender.mouseMoveTo(coords[0] + 10, coords[1] + 10);
43 coords = mediaControlsButtonCoordinates(video, "timeline"); 42 // Expect another as we move back to the slider.
44 eventSender.mouseMoveTo(coords[0], coords[1]); 43 eventSender.mouseMoveTo(coords[0], coords[1]);
45 44
46 eventSender.mouseDown(); 45 // The above, positioned the slider under the mouse.
47 eventSender.mouseUp(); 46 // Click to begin a drag.
48 eventSender.keyDown('A'); 47 eventSender.mouseDown();
48 video.onmousemove = t.unreached_func();
49 49
50 // If we're not dragging, then we should get a mousemove. 50 // Check that the timeline also captures mousemove if the
51 waitForEventOnce("mousemove"); 51 // slider is being dragged.
52 eventSender.mouseMoveTo(coords[0]+10, coords[1]+10); 52 eventSender.mouseMoveTo(coords[0] + 10, coords[1] + 10)
53 // Expect another as we move back to the slider. 53 assert_equals(mouseMoveEventCount, 2);
54 waitForEventOnce("mousemove"); 54 });
55 eventSender.mouseMoveTo(coords[0], coords[1]);
56 55
57 // The above positioned the slider under the mouse. Click 56 function sendMouseAndKeyEvents() {
58 // to begin a drag. 57 eventSender.mouseDown();
59 eventSender.mouseDown(); 58 eventSender.mouseUp();
59 eventSender.keyDown('A');
60 }
60 61
61 waitForEventAndFail("mousemove") 62 video.src = findMediaFile("video", "content/test");
62 63 });
63 // Check that the timeline also captures mousemove if the 64 </script>
64 // slider is being dragged.
65 eventSender.mouseMoveTo(coords[0]+10, coords[1]+10)
66 }
67 });
68 video.src = findMediaFile("video", "content/test");
69 </script>
70 </body>
71 </html>
OLDNEW
« no previous file with comments | « no previous file | third_party/WebKit/LayoutTests/media/video-controls-mouse-events-captured-expected.txt » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698