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

Side by Side Diff: third_party/WebKit/LayoutTests/fast/events/constructors/pointer-event-constructor.html

Issue 2406263003: Make PointerEvent coordinates fractional for touch (Closed)
Patch Set: Rebased. Created 4 years, 1 month 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
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <script src="../../../resources/js-test.js"></script> 2 <script src="../../../resources/js-test.js"></script>
3 3
4 <script> 4 <script>
5 5
6 description("This tests the constructor for the PointerEvent DOM class."); 6 description("This tests the constructor for the PointerEvent DOM class.");
7 7
8 debug("--- tests for intrinsic attributes ---"); 8 debug("--- tests for intrinsic attributes plus screen & client coordinates ---") ;
9 9
10 ["pointerId", "tiltX", "tiltY"].forEach(function (attr) { 10 ["pointerId", "tiltX", "tiltY"].forEach(function (attr) {
11 debug("-- no init --"); 11 debug("-- no init --");
12 shouldBeZero("new PointerEvent('eventType')." + attr); 12 shouldBeZero("new PointerEvent('eventType')." + attr);
13 13
14 debug("-- init with valid long values --"); 14 debug("-- init with valid long values --");
15 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": 0 })." + attr, 0);
15 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": 123 })." + attr, 123); 16 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": 123 })." + attr, 123);
16 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": -123 })." + attr, -123); 17 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": -123 })." + attr, -123);
17 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": 214748364 7 })." + attr, 2147483647); 18 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": 214748364 7 })." + attr, 2147483647);
18 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": -21474836 48 })." + attr, -2147483648); 19 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": -21474836 48 })." + attr, -2147483648);
19 20
20 debug("-- init with non-long values --"); 21 debug("-- init with non-long values --");
21 shouldBeZero("new PointerEvent('eventType', { " + attr + ": 184467440737095516 15 })." + attr); 22 shouldBeZero("new PointerEvent('eventType', { " + attr + ": 184467440737095516 15 })." + attr);
22 shouldBeEqualToNumber("new PointerEvent('eventType', {" + attr + ": 123.45 }). " + attr, 123); 23 shouldBeEqualToNumber("new PointerEvent('eventType', {" + attr + ": 123.45 }). " + attr, 123);
23 shouldBeZero("new PointerEvent('eventType', { " + attr + ": '123abc' })." + at tr); 24 shouldBeZero("new PointerEvent('eventType', { " + attr + ": '123abc' })." + at tr);
24 shouldBeZero("new PointerEvent('eventType', { " + attr + ": 'dummy' })." + att r); 25 shouldBeZero("new PointerEvent('eventType', { " + attr + ": 'dummy' })." + att r);
25 shouldBeZero("new PointerEvent('eventType', { " + attr + ": NaN })." + attr); 26 shouldBeZero("new PointerEvent('eventType', { " + attr + ": NaN })." + attr);
26 shouldBeZero("new PointerEvent('eventType', { " + attr + ": null })." + attr); 27 shouldBeZero("new PointerEvent('eventType', { " + attr + ": null })." + attr);
27 shouldBeZero("new PointerEvent('eventType', { " + attr + ": undefined })." + a ttr); 28 shouldBeZero("new PointerEvent('eventType', { " + attr + ": undefined })." + a ttr);
28 shouldBeZero("new PointerEvent('eventType', { " + attr + ": [] })." + attr); 29 shouldBeZero("new PointerEvent('eventType', { " + attr + ": [] })." + attr);
29 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": [12] })." + attr, 12); 30 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": [12] })." + attr, 12);
30 shouldBeZero("new PointerEvent('eventType', { " + attr + ": [12, 34] })." + at tr); 31 shouldBeZero("new PointerEvent('eventType', { " + attr + ": [12, 34] })." + at tr);
31 shouldBeZero("new PointerEvent('eventType', { " + attr + ": {} })." + attr); 32 shouldBeZero("new PointerEvent('eventType', { " + attr + ": {} })." + attr);
32 shouldBeZero("new PointerEvent('eventType', { " + attr + ": {abc:1} })." + att r); 33 shouldBeZero("new PointerEvent('eventType', { " + attr + ": {abc:1} })." + att r);
33 shouldBeZero("new PointerEvent('eventType', { " + attr + ": {} })." + attr); 34 shouldBeZero("new PointerEvent('eventType', { " + attr + ": {} })." + attr);
34 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": {valueOf: function () { return 123; }} })." + attr, 123); 35 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": {valueOf: function () { return 123; }} })." + attr, 123);
35 }); 36 });
36 37
37 ["width", "height", "pressure"].forEach(function (attr) { 38 ["width", "height", "pressure", "screenX", "screenY", "clientX", "clientY"].forE ach(function (attr) {
38 debug("-- no init --"); 39 debug("-- no init --");
39 var defaultValue = 1; // For width and height 40 var defaultValue = (attr == "width" || attr == "height") ? 1 : 0;
40 if (attr == "pressure")
41 defaultValue = 0;
42 shouldBeEqualToNumber("new PointerEvent('eventType')." + attr, defaultValue); 41 shouldBeEqualToNumber("new PointerEvent('eventType')." + attr, defaultValue);
43 42
44 debug("-- init with valid float/double values --"); 43 debug("-- init with valid float/double values --");
44 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": 0 })." + attr, 0);
45 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": 123 })." + attr, 123); 45 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": 123 })." + attr, 123);
46 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": -123 })." + attr, -123); 46 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": -123 })." + attr, -123);
47 shouldBeCloseTo("new PointerEvent('eventType', { " + attr + ": 123.45 })." + a ttr, 123.45, 0.00001); 47 shouldBeCloseTo("new PointerEvent('eventType', { " + attr + ": 123.45 })." + a ttr, 123.45, 0.00001);
48 shouldBeCloseTo("new PointerEvent('eventType', { " + attr + ": -123.45 })." + attr, -123.45, 0.00001); 48 shouldBeCloseTo("new PointerEvent('eventType', { " + attr + ": -123.45 })." + attr, -123.45, 0.00001);
49 shouldBeCloseTo("new PointerEvent('eventType', { " + attr + ": 1.23e5 })." + a ttr, 123000, 0.00001); 49 shouldBeCloseTo("new PointerEvent('eventType', { " + attr + ": 1.23e5 })." + a ttr, 123000, 0.00001);
50 shouldBeCloseTo("new PointerEvent('eventType', { " + attr + ": -1.2e-3 })." + attr, -0.0012, 0.00001); 50 shouldBeCloseTo("new PointerEvent('eventType', { " + attr + ": -1.2e-3 })." + attr, -0.0012, 0.00001);
51 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": 16777215 })." + attr, 16777215);
52 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": -16777216 })." + attr, -16777216);
51 53
52 debug("-- init with non-float/double values --"); 54 debug("-- init with non-float/double values --");
53 shouldThrow("new PointerEvent('eventType', { " + attr + ": '123abc' })." + att r); 55 shouldThrow("new PointerEvent('eventType', { " + attr + ": '123abc' })." + att r);
54 shouldThrow("new PointerEvent('eventType', { " + attr + ": 'dummy' })." + attr ); 56 shouldThrow("new PointerEvent('eventType', { " + attr + ": 'dummy' })." + attr );
55 shouldThrow("new PointerEvent('eventType', { " + attr + ": NaN })." + attr); 57 shouldThrow("new PointerEvent('eventType', { " + attr + ": NaN })." + attr);
56 shouldBeZero("new PointerEvent('eventType', { " + attr + ": null })." + attr); 58 shouldBeZero("new PointerEvent('eventType', { " + attr + ": null })." + attr);
57 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": undefined })." + attr, defaultValue); 59 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": undefined })." + attr, defaultValue);
58 shouldBeZero("new PointerEvent('eventType', { " + attr + ": [] })." + attr); 60 shouldBeZero("new PointerEvent('eventType', { " + attr + ": [] })." + attr);
59
60 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": [12] })." + attr, 12); 61 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": [12] })." + attr, 12);
61 shouldThrow("new PointerEvent('eventType', { " + attr + ": [12, 34] })." + att r); 62 shouldThrow("new PointerEvent('eventType', { " + attr + ": [12, 34] })." + att r);
62 shouldThrow("new PointerEvent('eventType', { " + attr + ": {} })." + attr); 63 shouldThrow("new PointerEvent('eventType', { " + attr + ": {} })." + attr);
63 shouldThrow("new PointerEvent('eventType', { " + attr + ": {abc:1} })." + attr ); 64 shouldThrow("new PointerEvent('eventType', { " + attr + ": {abc:1} })." + attr );
64 shouldThrow("new PointerEvent('eventType', { " + attr + ": {} })." + attr); 65 shouldThrow("new PointerEvent('eventType', { " + attr + ": {} })." + attr);
65 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": {valueOf: function () { return 123; }} })." + attr, 123); 66 shouldBeEqualToNumber("new PointerEvent('eventType', { " + attr + ": {valueOf: function () { return 123; }} })." + attr, 123);
66 }); 67 });
67 68
68 debug("--- tests for inherited attributes ---"); 69 debug("--- tests for inherited attributes (other than screen & client coordinate s) ---");
69 70
70 shouldBeFalse("new PointerEvent('eventType').bubbles"); 71 shouldBeFalse("new PointerEvent('eventType').bubbles");
71 shouldBeFalse("new PointerEvent('eventType').cancelable"); 72 shouldBeFalse("new PointerEvent('eventType').cancelable");
72 shouldBeNull("new PointerEvent('eventType').view"); 73 shouldBeNull("new PointerEvent('eventType').view");
73 shouldBeZero("new PointerEvent('eventType').detail"); 74 shouldBeZero("new PointerEvent('eventType').detail");
74 shouldBeZero("new PointerEvent('eventType').screenX");
75 shouldBeZero("new PointerEvent('eventType').screenY");
76 shouldBeZero("new PointerEvent('eventType').clientX");
77 shouldBeZero("new PointerEvent('eventType').clientY");
78 shouldBeFalse("new PointerEvent('eventType').ctrlKey"); 75 shouldBeFalse("new PointerEvent('eventType').ctrlKey");
79 shouldBeFalse("new PointerEvent('eventType').shiftKey"); 76 shouldBeFalse("new PointerEvent('eventType').shiftKey");
80 shouldBeFalse("new PointerEvent('eventType').altKey"); 77 shouldBeFalse("new PointerEvent('eventType').altKey");
81 shouldBeFalse("new PointerEvent('eventType').metaKey"); 78 shouldBeFalse("new PointerEvent('eventType').metaKey");
82 shouldBeZero("new PointerEvent('eventType').button"); 79 shouldBeZero("new PointerEvent('eventType').button");
83 shouldBeZero("new PointerEvent('eventType').buttons"); 80 shouldBeZero("new PointerEvent('eventType').buttons");
84 shouldBeNull("new PointerEvent('eventType').relatedTarget"); 81 shouldBeNull("new PointerEvent('eventType').relatedTarget");
85 82
86 </script> 83 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698