47 lines
1.3 KiB
HTML
47 lines
1.3 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<script src="../../../resources/js-test-pre.js"></script>
|
|
</head>
|
|
<body>
|
|
<script>
|
|
description('Test for validationMessage IDL attribute for <input type=number>');
|
|
var parent = document.createElement('div');
|
|
document.body.appendChild(parent);
|
|
parent.innerHTML = '<input type=number id=number maxlength=1 pattern=x>';
|
|
var input = document.getElementById('number');
|
|
|
|
function testIt(value, min, max, step)
|
|
{
|
|
input.setAttribute("max", max);
|
|
input.setAttribute("min", min);
|
|
input.setAttribute("step", step);
|
|
input.setAttribute("value", value);
|
|
return input.validationMessage;
|
|
}
|
|
|
|
debug('No message')
|
|
shouldBeEqualToString('testIt("", "", "")', '');
|
|
|
|
debug('Value missing')
|
|
input.setAttribute("required", "");
|
|
shouldBeEqualToString('testIt("", "", "")', 'Fill out this field');
|
|
input.removeAttribute("required");
|
|
|
|
debug('Type mismatch');
|
|
shouldBeEqualToString('testIt("foo", "", "")', '');
|
|
|
|
debug('Range overflow')
|
|
shouldBeEqualToString('testIt("200", "", "100")', 'Value must be less than or equal to 100');
|
|
|
|
debug('Range underflow')
|
|
shouldBeEqualToString('testIt("10", "50", "100")', 'Value must be greater than or equal to 50');
|
|
|
|
debug('Step mismatch')
|
|
shouldBeEqualToString('testIt("55", "0", "100", "10")', 'Enter a valid value');
|
|
|
|
</script>
|
|
<script src="../../../resources/js-test-post.js"></script>
|
|
</body>
|
|
</html>
|