48 lines
1.4 KiB
HTML
48 lines
1.4 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<script src="../../../resources/js-test-pre.js"></script>
|
|
</head>
|
|
<body>
|
|
<script>
|
|
description('Test for spinbutton behavior for out-of-range values.');
|
|
|
|
var parent = document.createElement('div');
|
|
document.body.appendChild(parent);
|
|
parent.innerHTML = '<input type=number id=lower value=-10 min=0 max=100>'
|
|
+ '<input type=number id=higher value=200 min=0 max=100>';
|
|
var lower = document.getElementById('lower');
|
|
var higher = document.getElementById('higher');
|
|
|
|
function sendKeyEvent(element, key)
|
|
{
|
|
element.focus();
|
|
var event = document.createEvent('KeyboardEvents');
|
|
event.initKeyboardEvent('keydown', true, true, document.defaultView, key, 0, false, false, false, false, false);
|
|
element.dispatchEvent(event);
|
|
}
|
|
|
|
debug('Pressing the down arrow key on an input field of which value is lower than the minimum:');
|
|
sendKeyEvent(lower, 'Down');
|
|
var unchanged = "-10";
|
|
shouldBe('lower.value', 'unchanged');
|
|
|
|
debug('Pressing the up arrow key on the input:');
|
|
sendKeyEvent(lower, 'Up');
|
|
shouldBe('lower.value', 'lower.min');
|
|
|
|
debug('Pressing the up arrow key on an input field of which value is higher than the maximum:');
|
|
sendKeyEvent(higher, 'Up');
|
|
unchanged = "200";
|
|
shouldBe('higher.value', 'unchanged');
|
|
|
|
debug('Pressing the down arrow key on the input:');
|
|
sendKeyEvent(higher, 'Down');
|
|
shouldBe('higher.value', 'higher.max');
|
|
|
|
parent.innerHTML = '';
|
|
</script>
|
|
<script src="../../../resources/js-test-post.js"></script>
|
|
</body>
|
|
</html>
|