4 <script src="../../../resources/js-test.js"></script>
5 <script src="../../forms/resources/picker-common.js"></script>
6 <script src="resources/suggestion-picker-common.js"></script>
8 <body style="background-color: #bbbbbb;">
9 <p id="description"></p>
10 <div id="console"></div>
11 <input type=date id=date value="2012-01-01" step="2" list=suggestions>
12 <datalist id=suggestions>
13 <option>2012-01-21</option>
14 <option>2012-01-22</option>
15 <option>2012-01-23</option>
16 <option>2012-01-24</option>
17 <option>2012-01-25</option>
18 <option>2012-01-26</option>
19 <option>2012-01-27</option>
20 <option>2012-01-28</option>
21 <option>2012-01-29</option>
22 <option>2012-01-30</option>
23 <option>2012-01-31</option>
24 <option>2012-02-01</option>
27 <p id="description" style="opacity: 0"></p>
28 <div id="console" style="opacity: 0"></div>
31 description('Tests that step attribute filters out suggestions as expected.');
33 debug('Check that page popup doesn\'t exist at first.');
34 shouldBeNull('document.getElementById("mock-page-popup")');
36 var dateElement = document.getElementById('date');
38 window.onload = function() {
39 openPicker(dateElement, test1);
45 shouldBe('entryValues().length', '7');
46 shouldBeEqualToString('entryValues()[0]', '2012-01-21');
47 shouldBeEqualToString('entryValues()[1]', '2012-01-23');
48 shouldBeEqualToString('entryValues()[2]', '2012-01-25');
49 shouldBeEqualToString('entryValues()[3]', '2012-01-27');
50 shouldBeEqualToString('entryValues()[4]', '2012-01-29');
51 shouldBeEqualToString('entryValues()[5]', '2012-01-31');
52 shouldBeEqualToString('entryValues()[6]', '@openCalendarPicker');
54 eventSender.keyDown('escape'); // Close picker.
55 waitUntilClosing(test1AfterClosing);
58 function test1AfterClosing() {
60 openPicker(dateElement, test2);
66 shouldBe('entryValues().length', '4');
67 shouldBeEqualToString('entryValues()[0]', '2012-01-21');
68 shouldBeEqualToString('entryValues()[1]', '2012-01-26');
69 shouldBeEqualToString('entryValues()[2]', '2012-01-31');
70 shouldBeEqualToString('entryValues()[3]', '@openCalendarPicker');
72 eventSender.keyDown('escape'); // Close picker.
73 waitUntilClosing(test2AfterClosing);
76 function test2AfterClosing() {
77 dateElement.step = 30;
78 openPicker(dateElement, test3);
84 shouldBe('entryValues().length', '2');
85 shouldBeEqualToString('entryValues()[0]', '2012-01-31');
86 shouldBeEqualToString('entryValues()[1]', '@openCalendarPicker');