48 lines
1.3 KiB
HTML
48 lines
1.3 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
|
|
<html>
|
|
<head>
|
|
<script src="../../resources/js-test-pre.js"></script>
|
|
</head>
|
|
<body>
|
|
<p id="description"></p>
|
|
<div id="console"></div>
|
|
<script>
|
|
description('Test the behavior of pattern attribute and pattern DOM property.');
|
|
|
|
var input = document.createElement('input');
|
|
input.type = 'text';
|
|
|
|
// No pattern attribute.
|
|
shouldBe('input.pattern', '""');
|
|
|
|
// Set a string value.
|
|
input.pattern = 'foo';
|
|
shouldBe('input.getAttribute("pattern")', '"foo"');
|
|
input.setAttribute('pattern', 'bar');
|
|
shouldBe('input.pattern', '"bar"');
|
|
|
|
// Null.
|
|
input.pattern = null;
|
|
shouldBeEqualToString('input.pattern', 'null');
|
|
shouldBeEqualToString('input.getAttribute("pattern")', 'null');
|
|
input.setAttribute('pattern', null);
|
|
shouldBe('input.pattern', '"null"');
|
|
|
|
// Undefined.
|
|
input.pattern = undefined;
|
|
shouldBe('input.pattern', '"undefined"');
|
|
shouldBe('input.getAttribute("pattern")', '"undefined"');
|
|
input.setAttribute('pattern', undefined);
|
|
shouldBe('input.pattern', '"undefined"');
|
|
|
|
// Non-string.
|
|
input.pattern = 256;
|
|
shouldBe('input.pattern', '"256"');
|
|
shouldBe('input.getAttribute("pattern")', '"256"');
|
|
input.setAttribute('pattern', 256);
|
|
shouldBe('input.pattern', '"256"');
|
|
</script>
|
|
<script src="../../resources/js-test-post.js"></script>
|
|
</body>
|
|
</html>
|