JS Test Harness: Insert the stylesheet dynamically
[WebKit-https.git] / LayoutTests / fast / forms / month / input-valueasdate.html
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <script src="../../js/resources/js-test-pre.js"></script>
5 </head>
6 <body>
7 <p id="description"></p>
8 <div id="console"></div>
9 <script>
10 description('Test HTMLInputElement::valueAsDate binding.');
11
12 var input = document.createElement('input');
13 var invalidStateError = 'Error: INVALID_STATE_ERR: DOM Exception 11';
14
15 debug('Unsuppported type:');
16 input.type = 'text';
17 shouldBe('input.valueAsDate', 'null');
18 shouldThrow('input.valueAsDate = date', 'invalidStateError');
19
20 debug('');
21 debug('Supported type:');
22 input.type = 'month';
23 input.value = '2009-12';
24 var valueAsDate = input.valueAsDate;
25 shouldBeTrue('valueAsDate != null');
26 shouldBe('typeof valueAsDate', '"object"');
27 shouldBe('valueAsDate.constructor.name', '"Date"');
28
29 debug('Sets an Epoch Date:');
30 var date = new Date();
31 date.setTime(0);
32 input.valueAsDate = date;
33 shouldBe('input.value', '"1970-01"');
34 shouldBe('input.valueAsDate.getTime()', '0');
35 debug('Sets a number 0:');
36 input.valueAsDate = 0;
37 shouldBe('input.value', '"1970-01"');
38 shouldBe('input.valueAsDate.getTime()', '0');
39 debug('Sets other types:');
40 input.value = '1970-01';
41 input.valueAsDate = null;
42 shouldBe('input.value', '""');
43 input.value = '1970-01';
44 input.valueAsDate = undefined;
45 shouldBe('input.value', '""');
46 input.value = '1970-01';
47 input.valueAsDate = document;
48 shouldBe('input.value', '""');
49
50
51 var successfullyParsed = true;
52 </script>
53 <script src="../../js/resources/js-test-post.js"></script>
54 </body>
55 </html>