tizen beta release
[framework/web/webkit-efl.git] / LayoutTests / fast / forms / script-tests / input-number-events.js
1 description('Test for event dispatching by spin buttons in a type=numnber input.');
2
3 var parent = document.createElement('div');
4 document.body.appendChild(parent);
5 parent.innerHTML = '<input type=number id=number value=0 max=1><input id=another>';
6 var numberInput = document.getElementById('number');
7 var anotherInput = document.getElementById('another');
8 var inputEventCounter = 0;
9 var changeEventCounter = 0;
10
11 numberInput.onchange = function() { changeEventCounter++; };
12 numberInput.oninput = function() { inputEventCounter++; };
13
14 if (window.eventSender) {
15     debug('Initial state');
16     shouldBe('changeEventCounter', '0');
17     shouldBe('inputEventCounter', '0');
18
19     debug('Click the upper button');
20     // Move the cursor on the upper button.
21     eventSender.mouseMoveTo(numberInput.offsetLeft + numberInput.offsetWidth - 10, numberInput.offsetTop + numberInput.offsetHeight / 4);
22     eventSender.mouseDown();
23     eventSender.mouseUp();
24     shouldBe('numberInput.value', '"1"');
25     shouldBe('changeEventCounter', '0');
26     shouldBe('inputEventCounter', '1');
27
28     debug('Click again, but the value is not changed.');
29     eventSender.mouseDown();
30     eventSender.mouseUp();
31     shouldBe('numberInput.value', '"1"');
32     shouldBe('changeEventCounter', '0');
33     shouldBe('inputEventCounter', '1');
34
35     debug('Focus on another field');
36     anotherInput.focus();
37     shouldBe('changeEventCounter', '1');
38     shouldBe('inputEventCounter', '1');
39
40     parent.innerHTML = '';
41 } else {
42   document.getElementById('console').innerHTML = 'No eventSender';
43 }