OLD | NEW |
1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
2 <html> | 2 <html> |
3 <head> | 3 <head> |
4 <script src="../../../resources/js-test.js"></script> | 4 <script src="../../../resources/js-test.js"></script> |
5 </head> | 5 </head> |
6 <body> | 6 <body> |
7 <script> | 7 <script> |
8 | 8 |
9 description("This tests the constructor for the MouseEvent DOM class."); | 9 description("This tests the constructor for the MouseEvent DOM class."); |
10 | 10 |
(...skipping 24 matching lines...) Expand all Loading... |
35 // cancelable is passed. | 35 // cancelable is passed. |
36 shouldBe("new MouseEvent('eventType', { cancelable: false }).cancelable", "false
"); | 36 shouldBe("new MouseEvent('eventType', { cancelable: false }).cancelable", "false
"); |
37 shouldBe("new MouseEvent('eventType', { cancelable: true }).cancelable", "true")
; | 37 shouldBe("new MouseEvent('eventType', { cancelable: true }).cancelable", "true")
; |
38 | 38 |
39 // view is passed. | 39 // view is passed. |
40 // Window objects. | 40 // Window objects. |
41 shouldBe("new MouseEvent('eventType', { view: window }).view", "window"); | 41 shouldBe("new MouseEvent('eventType', { view: window }).view", "window"); |
42 shouldBe("new MouseEvent('eventType', { view: this }).view", "this"); | 42 shouldBe("new MouseEvent('eventType', { view: this }).view", "this"); |
43 | 43 |
44 // Non-window objects. | 44 // Non-window objects. |
45 shouldBe("new MouseEvent('eventType', { view: testObject }).view", "null"); | 45 shouldThrow("new MouseEvent('eventType', { view: testObject }).view"); |
46 shouldBe("new MouseEvent('eventType', { view: document }).view", "null"); | 46 shouldThrow("new MouseEvent('eventType', { view: document }).view"); |
47 shouldBe("new MouseEvent('eventType', { view: undefined }).view", "null"); | 47 shouldBe("new MouseEvent('eventType', { view: undefined }).view", "null"); |
48 shouldBe("new MouseEvent('eventType', { view: null }).view", "null"); | 48 shouldBe("new MouseEvent('eventType', { view: null }).view", "null"); |
49 shouldBe("new MouseEvent('eventType', { view: false }).view", "null"); | 49 shouldThrow("new MouseEvent('eventType', { view: false }).view"); |
50 shouldBe("new MouseEvent('eventType', { view: true }).view", "null"); | 50 shouldThrow("new MouseEvent('eventType', { view: true }).view"); |
51 shouldBe("new MouseEvent('eventType', { view: '' }).view", "null"); | 51 shouldThrow("new MouseEvent('eventType', { view: '' }).view"); |
52 shouldBe("new MouseEvent('eventType', { view: 'chocolate' }).view", "null"); | 52 shouldThrow("new MouseEvent('eventType', { view: 'chocolate' }).view"); |
53 shouldBe("new MouseEvent('eventType', { view: 12345 }).view", "null"); | 53 shouldThrow("new MouseEvent('eventType', { view: 12345 }).view"); |
54 shouldBe("new MouseEvent('eventType', { view: 18446744073709551615 }).view", "nu
ll"); | 54 shouldThrow("new MouseEvent('eventType', { view: 18446744073709551615 }).view"); |
55 shouldBe("new MouseEvent('eventType', { view: NaN }).view", "null"); | 55 shouldThrow("new MouseEvent('eventType', { view: NaN }).view"); |
56 // Note that valueOf() is not called, when the left hand side is evaluated. | 56 // Note that valueOf() is not called, when the left hand side is evaluated. |
57 shouldBeFalse("new MouseEvent('eventType', { view: {valueOf: function () { retur
n window; } } }).view == window"); | 57 shouldThrow("new MouseEvent('eventType', { view: {valueOf: function () { return
window; } } }).view == window"); |
58 shouldBe("new MouseEvent('eventType', { get view() { return 123; } }).view", "nu
ll"); | 58 shouldBe("new MouseEvent('eventType', { get view() { return window; } }).view",
"window"); |
| 59 shouldThrow("new MouseEvent('eventType', { get view() { return 123; } }).view"); |
59 shouldThrow("new MouseEvent('eventType', { get view() { throw 'MouseEvent Error'
; } })"); | 60 shouldThrow("new MouseEvent('eventType', { get view() { throw 'MouseEvent Error'
; } })"); |
60 | 61 |
61 // Max/min for client positions (LayoutUnit max/min). | 62 // Max/min for client positions (LayoutUnit max/min). |
62 var MAX_CLIENT_SIZE = "33554431"; | 63 var MAX_CLIENT_SIZE = "33554431"; |
63 var MIN_CLIENT_SIZE = "-33554432"; | 64 var MIN_CLIENT_SIZE = "-33554432"; |
64 | 65 |
65 // detail, screenX, screenY, clientX and clientY are passed. | 66 // detail, screenX, screenY, clientX and clientY are passed. |
66 ["detail", "screenX", "screenY", "clientX", "clientY"].forEach(function (attr) { | 67 ["detail", "screenX", "screenY", "clientX", "clientY"].forEach(function (attr) { |
67 // numbers within the long range. | 68 // numbers within the long range. |
68 shouldBe("new MouseEvent('eventType', { " + attr + ": 0 })." + attr, "0"); | 69 shouldBe("new MouseEvent('eventType', { " + attr + ": 0 })." + attr, "0"); |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
133 shouldBe("new MouseEvent('eventType', { button: {valueOf: function () { return 1
2345; }} }).button", "12345"); | 134 shouldBe("new MouseEvent('eventType', { button: {valueOf: function () { return 1
2345; }} }).button", "12345"); |
134 | 135 |
135 // relatedTarget is passed. | 136 // relatedTarget is passed. |
136 // Valid objects. | 137 // Valid objects. |
137 shouldBe("new MouseEvent('eventType', { relatedTarget: testDiv }).relatedTarget"
, "testDiv"); | 138 shouldBe("new MouseEvent('eventType', { relatedTarget: testDiv }).relatedTarget"
, "testDiv"); |
138 shouldBe("new MouseEvent('eventType', { relatedTarget: document }).relatedTarget
", "document"); | 139 shouldBe("new MouseEvent('eventType', { relatedTarget: document }).relatedTarget
", "document"); |
139 shouldBe("new MouseEvent('eventType', { relatedTarget: xhr }).relatedTarget", "x
hr"); | 140 shouldBe("new MouseEvent('eventType', { relatedTarget: xhr }).relatedTarget", "x
hr"); |
140 shouldBe("new MouseEvent('eventType', { relatedTarget: window }).relatedTarget",
"window"); | 141 shouldBe("new MouseEvent('eventType', { relatedTarget: window }).relatedTarget",
"window"); |
141 | 142 |
142 // Invalid objects. | 143 // Invalid objects. |
143 shouldBe("new MouseEvent('eventType', { relatedTarget: testObject }).relatedTarg
et", "null"); | 144 shouldThrow("new MouseEvent('eventType', { relatedTarget: testObject }).relatedT
arget"); |
144 shouldBe("new MouseEvent('eventType', { relatedTarget: undefined }).relatedTarge
t", "null"); | 145 shouldBe("new MouseEvent('eventType', { relatedTarget: undefined }).relatedTarge
t", "null"); |
145 shouldBe("new MouseEvent('eventType', { relatedTarget: null }).relatedTarget", "
null"); | 146 shouldBe("new MouseEvent('eventType', { relatedTarget: null }).relatedTarget", "
null"); |
146 shouldBe("new MouseEvent('eventType', { relatedTarget: false }).relatedTarget",
"null"); | 147 shouldThrow("new MouseEvent('eventType', { relatedTarget: false }).relatedTarget
"); |
147 shouldBe("new MouseEvent('eventType', { relatedTarget: true }).relatedTarget", "
null"); | 148 shouldThrow("new MouseEvent('eventType', { relatedTarget: true }).relatedTarget"
); |
148 shouldBe("new MouseEvent('eventType', { relatedTarget: '' }).relatedTarget", "nu
ll"); | 149 shouldThrow("new MouseEvent('eventType', { relatedTarget: '' }).relatedTarget"); |
149 shouldBe("new MouseEvent('eventType', { relatedTarget: 'chocolate' }).relatedTar
get", "null"); | 150 shouldThrow("new MouseEvent('eventType', { relatedTarget: 'chocolate' }).related
Target"); |
150 shouldBe("new MouseEvent('eventType', { relatedTarget: 12345 }).relatedTarget",
"null"); | 151 shouldThrow("new MouseEvent('eventType', { relatedTarget: 12345 }).relatedTarget
"); |
151 shouldBe("new MouseEvent('eventType', { relatedTarget: 18446744073709551615 }).r
elatedTarget", "null"); | 152 shouldThrow("new MouseEvent('eventType', { relatedTarget: 18446744073709551615 }
).relatedTarget"); |
152 shouldBe("new MouseEvent('eventType', { relatedTarget: NaN }).relatedTarget", "n
ull"); | 153 shouldThrow("new MouseEvent('eventType', { relatedTarget: NaN }).relatedTarget")
; |
153 // Note that valueOf() is not called, when the left hand side is evaluated. | 154 // Note that valueOf() is not called, when the left hand side is evaluated. |
154 shouldBeFalse("new MouseEvent('eventType', { relatedTarget: {valueOf: function (
) { return testDiv; } } }).relatedTarget == testDiv"); | 155 shouldThrow("new MouseEvent('eventType', { relatedTarget: {valueOf: function ()
{ return testDiv; } } }).relatedTarget == testDiv"); |
155 shouldBe("new MouseEvent('eventType', { get relatedTarget() { return 123; } }).r
elatedTarget", "null"); | 156 shouldBe("new MouseEvent('eventType', { get relatedTarget() { return testDiv; }
}).relatedTarget", "testDiv"); |
| 157 shouldThrow("new MouseEvent('eventType', { get relatedTarget() { return 123; } }
).relatedTarget"); |
156 shouldThrow("new MouseEvent('eventType', { get relatedTarget() { throw 'MouseEve
nt Error'; } })"); | 158 shouldThrow("new MouseEvent('eventType', { get relatedTarget() { throw 'MouseEve
nt Error'; } })"); |
157 | 159 |
158 // All initializers are passed. | 160 // All initializers are passed. |
159 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).bubbles", "true"); | 161 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).bubbles", "true"); |
160 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).cancelable", "true"); | 162 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).cancelable", "true"); |
161 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).view", "window"); | 163 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).view", "window"); |
162 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).detail", "111"); | 164 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).detail", "111"); |
163 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).screenX", "222"); | 165 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).screenX", "222"); |
164 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).screenY", "333"); | 166 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).screenY", "333"); |
165 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).clientX", "444"); | 167 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).clientX", "444"); |
166 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).clientY", "555"); | 168 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).clientY", "555"); |
167 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).ctrlKey", "true"); | 169 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).ctrlKey", "true"); |
168 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).shiftKey", "true"); | 170 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).shiftKey", "true"); |
169 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).altKey", "true"); | 171 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).altKey", "true"); |
170 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).metaKey", "true"); | 172 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).metaKey", "true"); |
171 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).button", "666"); | 173 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).button", "666"); |
172 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).relatedTarget", "testDiv"); | 174 shouldBe("new MouseEvent('eventType', { bubbles: true, cancelable: true, view: w
indow, detail: 111, screenX: 222, screenY: 333, clientX: 444, clientY: 555, ctrl
Key: true, shiftKey: true, altKey: true, metaKey: true, button: 666, relatedTarg
et: testDiv }).relatedTarget", "testDiv"); |
173 </script> | 175 </script> |
174 </body> | 176 </body> |
175 </html> | 177 </html> |
OLD | NEW |