| 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 |