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

Side by Side Diff: third_party/WebKit/LayoutTests/inspector-protocol/input/emulateTouchFromMouseEvent.js

Issue 2961493002: [DevTools] Migrate inspector-protocol/{input,network} tests to new harness (Closed)
Patch Set: Created 3 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
OLDNEW
(Empty)
1 (async function(testRunner) {
2 let {page, session, dp} = await testRunner.startBlank(``);
3
4 await session.evaluate(`
5 var logs = [];
6 function log(text) {
7 logs.push(text);
8 }
9
10 const expectedEventCount = 5;
allada 2017/06/26 22:02:53 lets un-const this and set it to -1.
dgozman 2017/06/26 23:22:07 Done.
11 var eventCount = 0;
12 var resolve;
13 var gotEventsPromise = new Promise(f => resolve = f);
14
15 function logEvent(event) {
16 event.preventDefault();
allada 2017/06/26 22:02:53 Lets add an assert here like: console.assert(expe
dgozman 2017/06/26 23:22:07 I am a bit hesitant on this - expecting flakes due
17 log('-----Event-----');
18 log('type: ' + event.type);
19 if (event.shiftKey)
20 log('shiftKey');
21 log('----Touches----');
22 for (var i = 0; i < event.touches.length; i++) {
23 var touch = event.touches[i];
24 log('id: ' + i);
25 log('pageX: ' + touch.pageX);
26 log('pageY: ' + touch.pageY);
27 log('radiusX: ' + touch.radiusX);
28 log('radiusY: ' + touch.radiusY);
29 log('rotationAngle: ' + touch.rotationAngle);
30 log('force: ' + touch.force);
31 }
32 eventCount++;
33 if (eventCount === expectedEventCount)
34 resolve(logs.join('\\n'));
35 }
36
37 window.addEventListener('touchstart', logEvent, {passive: false});
38 window.addEventListener('touchmove', logEvent, {passive: false});
39 window.addEventListener('touchend', logEvent);
40 window.addEventListener('touchcancel', logEvent);
41 `);
42
43 var events = [
44 {
45 'type': 'mousePressed',
46 'button': 'left',
47 'clickCount': 1,
48 'x': 100,
49 'y': 200
50 },
51 {
52 'type': 'mouseMoved',
53 'button': 'left',
54 'clickCount': 1,
55 'x': 100,
56 'y': 250
57 },
58 {
59 'type': 'mouseReleased',
60 'button': 'left',
61 'clickCount': 1,
62 'x': 100,
63 'y': 250
64 },
65 {
66 'type': 'mouseMoved',
allada 2017/06/26 22:02:53 Add comment here saying something like: // Should
dgozman 2017/06/26 23:22:07 Done.
67 'button': 'none',
68 'modifiers': 8, // shift
69 'x': 50,
70 'y': 150
71 },
72 {
73 'type': 'mousePressed',
74 'button': 'left',
75 'clickCount': 1,
76 'x': 100,
77 'y': 200
78 },
79 {
80 'type': 'mouseMoved',
81 'button': 'left',
82 'clickCount': 1,
83 'x': 100,
84 'y': 250
85 },
86 {
87 'type': 'mouseReleased',
88 'button': 'left',
89 'clickCount': 1,
90 'x': 100,
91 'y': 250
92 }
93 ];
94
allada 2017/06/26 22:02:53 lets add: await session.evaluateAsync('expectedEv
dgozman 2017/06/26 23:22:07 Nice idea! Done.
95 await dp.Page.enable();
96 await dp.Page.setTouchEmulationEnabled({enabled: true});
97
98 var time = Number(new Date()) / 1000;
99 for (var index = 0; index < events.length; index++) {
100 var event = events[index];
101 event.timestamp = time + index;
102 var msg = await dp.Input.emulateTouchFromMouseEvent(event);
103 if (msg.error)
104 testRunner.log('Error: ' + msg.error.message);
105 }
106
107 testRunner.log(await session.evaluateAsync('gotEventsPromise'));
108 testRunner.completeTest();
109 })
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698