OLD | NEW |
1 <!DOCTYPE> | 1 <!DOCTYPE> |
2 <html> | 2 <html> |
3 <body> | 3 <body> |
4 <script src="../../../resources/js-test.js"></script> | 4 <script src="../../../resources/js-test.js"></script> |
5 <input type="number" id="num1" onchange="handleChangeEvent(this);" oninput="hand
leInputEvent(this);"> | 5 <input type="number" id="num1" onchange="handleChangeEvent(this);" oninput="hand
leInputEvent(this);"> |
6 <script> | 6 <script> |
7 var changeEventCounter = 0; | 7 var changeEventCounter = 0; |
8 var inputEventCounter = 0; | 8 var inputEventCounter = 0; |
9 | 9 |
10 function handleChangeEvent(element){ | 10 function handleChangeEvent(element){ |
11 ++changeEventCounter; | 11 ++changeEventCounter; |
12 } | 12 } |
13 | 13 |
14 function handleInputEvent(element){ | 14 function handleInputEvent(element){ |
15 ++inputEventCounter; | 15 ++inputEventCounter; |
16 } | 16 } |
17 | 17 |
18 var numberInput1= document.getElementById('num1'); | 18 var numberInput1= document.getElementById('num1'); |
19 numberInput1.focus(); | 19 numberInput1.focus(); |
20 eventSender.mouseMoveTo(0, 0); | 20 eventSender.mouseMoveTo(0, 0); |
| 21 |
| 22 debug('Should not trigger any event'); |
| 23 shouldBe('inputEventCounter', '0'); |
| 24 shouldBe('changeEventCounter', '0'); |
21 eventSender.mouseMoveTo(numberInput1.offsetLeft + numberInput1.offsetWidth - 10,
numberInput1.offsetTop + numberInput1.offsetHeight / 4); | 25 eventSender.mouseMoveTo(numberInput1.offsetLeft + numberInput1.offsetWidth - 10,
numberInput1.offsetTop + numberInput1.offsetHeight / 4); |
22 eventSender.mouseDown(); | 26 eventSender.mouseDown(); |
23 debug('Only input event occurs on mouse down'); | 27 debug('Only input event occurs on mouse down'); |
24 shouldBe('inputEventCounter', '1'); | 28 shouldBe('inputEventCounter', '1'); |
25 shouldBe('changeEventCounter', '0'); | 29 shouldBe('changeEventCounter', '0'); |
| 30 |
26 debug('Only change event occurs on mouse up'); | 31 debug('Only change event occurs on mouse up'); |
27 eventSender.mouseUp(); | 32 eventSender.mouseUp(); |
28 shouldBe('inputEventCounter', '1'); | 33 shouldBe('inputEventCounter', '1'); |
29 shouldBe('changeEventCounter', '1'); | 34 shouldBe('changeEventCounter', '1'); |
30 | 35 |
| 36 debug('Pressed more than once, still events are triggered'); |
| 37 eventSender.mouseMoveTo(numberInput1.offsetLeft + numberInput1.offsetWidth - 10,
numberInput1.offsetTop + numberInput1.offsetHeight / 4); |
| 38 eventSender.mouseDown(); |
| 39 eventSender.mouseUp(); |
| 40 shouldBe('inputEventCounter', '2'); |
| 41 shouldBe('changeEventCounter', '2'); |
| 42 |
31 </script> | 43 </script> |
32 </body> | 44 </body> |
33 </html> | 45 </html> |
OLD | NEW |