| Index: LayoutTests/fast/forms/number/number-spinbutton-changeevent-trigger.html
|
| diff --git a/LayoutTests/fast/forms/number/number-spinbutton-changeevent-trigger.html b/LayoutTests/fast/forms/number/number-spinbutton-changeevent-trigger.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..7b50ce2092cec6176023e65b8f9ff99ba8270ad0
|
| --- /dev/null
|
| +++ b/LayoutTests/fast/forms/number/number-spinbutton-changeevent-trigger.html
|
| @@ -0,0 +1,51 @@
|
| +<!DOCTYPE>
|
| +<html>
|
| +<body>
|
| +<script src="../../../resources/js-test.js"></script>
|
| +<script src="../resources/common.js"></script>
|
| +<input type="number" id="num1" onchange="handleChangeEvent(this);" oninput="handleInputEvent(this);">
|
| +<script>
|
| +var changeEventCounter = 0;
|
| +var inputEventCounter = 0;
|
| +
|
| +function handleChangeEvent(element) {
|
| + ++changeEventCounter;
|
| +}
|
| +
|
| +function handleInputEvent(element) {
|
| + ++inputEventCounter;
|
| +}
|
| +
|
| +var numberInput1= document.getElementById('num1');
|
| +numberInput1.focus();
|
| +debug('Should not trigger any event');
|
| +hoverOverElement(numberInput1);
|
| +shouldBe('inputEventCounter', '0');
|
| +shouldBe('changeEventCounter', '0');
|
| +
|
| +numberInput1.value = 0;
|
| +eventSender.mouseMoveTo(numberInput1.offsetLeft + numberInput1.offsetWidth - 10, numberInput1.offsetTop + numberInput1.offsetHeight / 4);
|
| +eventSender.mouseDown();
|
| +eventSender.mouseUp();
|
| +debug('Input and change events occurs on mouse down');
|
| +shouldBe('inputEventCounter', '1');
|
| +shouldBe('changeEventCounter', '1');
|
| +shouldBeEqualToString('numberInput1.value', '1');
|
| +
|
| +debug('Pressed more than once, still events are triggered');
|
| +eventSender.mouseMoveTo(numberInput1.offsetLeft + numberInput1.offsetWidth - 10, numberInput1.offsetTop + numberInput1.offsetHeight / 4);
|
| +eventSender.mouseDown();
|
| +eventSender.mouseUp();
|
| +shouldBe('inputEventCounter', '2');
|
| +shouldBe('changeEventCounter', '2');
|
| +shouldBeEqualToString('numberInput1.value', '2');
|
| +
|
| +debug('When moving away from field, it should not trigger event, only on value change');
|
| +numberInput1.blur();
|
| +shouldBe('inputEventCounter', '2');
|
| +shouldBe('changeEventCounter', '2');
|
| +shouldBeEqualToString('numberInput1.value', '2');
|
| +
|
| +</script>
|
| +</body>
|
| +</html>
|
|
|