Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(19)

Side by Side Diff: LayoutTests/fast/forms/date/date-stepup-stepdown.html

Issue 136783006: Upgrade stepUp()/stepDown() implementation to match spec. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <html> 2 <html>
3 <head> 3 <head>
4 <script src="../../../resources/js-test.js"></script> 4 <script src="../../../resources/js-test.js"></script>
5 </head> 5 </head>
6 <body> 6 <body>
7 <p id="description"></p> 7 <p id="description"></p>
8 <div id="console"></div> 8 <div id="console"></div>
9 <script> 9 <script>
10 description('Check stepUp() and stepDown() bahevior for type=date.'); 10 description('Check stepUp() and stepDown() behavior for type=date.');
11 11
12 var input = document.createElement('input'); 12 var input = document.createElement('input');
13 13
14 function setInputAttributes(min, max, step, value) { 14 function setInputAttributes(min, max, step, value) {
15 input.min = min; 15 input.min = min;
16 input.max = max; 16 input.max = max;
17 input.step = step; 17 input.step = step;
18 input.value = value; 18 input.value = value;
19 } 19 }
20 20
(...skipping 10 matching lines...) Expand all
31 setInputAttributes(min, null, step, value); 31 setInputAttributes(min, null, step, value);
32 if (typeof optionalStepCount != "undefined") 32 if (typeof optionalStepCount != "undefined")
33 input.stepDown(optionalStepCount); 33 input.stepDown(optionalStepCount);
34 else 34 else
35 input.stepDown(); 35 input.stepDown();
36 return input.value; 36 return input.value;
37 } 37 }
38 38
39 input.type = 'date'; 39 input.type = 'date';
40 debug('Invalid value'); 40 debug('Invalid value');
41 shouldThrow('stepUp("", null, null)'); 41 shouldBeEqualToString('stepUp("", null, null)', '1970-01-02');
42 shouldThrow('stepDown("", null, null)'); 42 shouldBeEqualToString('stepDown("", null, null)', '1969-12-31');
43 debug('Non-number arguments'); 43 debug('Non-number arguments');
44 shouldBe('stepUp("2010-02-10", null, null, "0")', '"2010-02-10"'); 44 shouldBeEqualToString('stepUp("2010-02-10", null, null, "0")', '2010-02-10');
45 shouldBe('stepDown("2010-02-10", null, null, "0")', '"2010-02-10"'); 45 shouldBeEqualToString('stepDown("2010-02-10", null, null, "0")', '2010-02-10');
46 shouldBe('stepUp("2010-02-10", null, null, "foo")', '"2010-02-10"'); 46 shouldBeEqualToString('stepUp("2010-02-10", null, null, "foo")', '2010-02-10');
47 shouldBe('stepDown("2010-02-10", null, null, "foo")', '"2010-02-10"'); 47 shouldBeEqualToString('stepDown("2010-02-10", null, null, "foo")', '2010-02-10') ;
48 shouldBe('stepUp("2010-02-10", null, null, null)', '"2010-02-10"'); 48 shouldBeEqualToString('stepUp("2010-02-10", null, null, null)', '2010-02-10');
49 shouldBe('stepDown("2010-02-10", null, null, null)', '"2010-02-10"'); 49 shouldBeEqualToString('stepDown("2010-02-10", null, null, null)', '2010-02-10');
50 debug('Normal cases'); 50 debug('Normal cases');
51 shouldBe('stepDown("1970-01-04", "2", null)', '"1970-01-02"'); 51 shouldBeEqualToString('stepDown("1970-01-04", "2", null)', '1970-01-03');
yosin_UTC9 2014/02/05 01:30:43 I'm not sure why result is "1970-01-03". 2 days be
keishi 2014/02/05 02:26:36 I think it is because 1970-01-04 is a step mismatc
sof 2014/02/05 07:48:54 That matches my interpretation. The step base is 1
52 shouldBe('stepUp("2010-02-10", null, null)', '"2010-02-11"'); 52 shouldBeEqualToString('stepUp("2010-02-10", null, null)', '2010-02-11');
53 shouldBe('stepDown("2010-02-10", null, null)', '"2010-02-09"'); 53 shouldBeEqualToString('stepDown("2010-02-10", null, null)', '2010-02-09');
54 shouldBe('stepUp("2010-02-10", null, null, 10)', '"2010-02-20"'); 54 shouldBeEqualToString('stepUp("2010-02-10", null, null, 10)', '2010-02-20');
55 shouldBe('stepDown("2010-02-10", null, null, 11)', '"2010-01-30"'); 55 shouldBeEqualToString('stepDown("2010-02-10", null, null, 11)', '2010-01-30');
56 shouldBe('stepUp("1970-01-01", "4", null, 2)', '"1970-01-09"'); 56 shouldBeEqualToString('stepUp("1970-01-01", "4", null, 2)', '1970-01-09');
57 shouldBe('stepDown("1970-01-01", "4", null, 3)', '"1969-12-20"'); 57 shouldBeEqualToString('stepDown("1970-01-01", "4", null, 3)', '1969-12-20');
58 debug('Step=any'); 58 debug('Step=any');
59 shouldThrow('stepUp("2010-02-10", "any", null)'); 59 shouldThrow('stepUp("2010-02-10", "any", null)');
60 shouldThrow('stepDown("2010-02-10", "any", null)'); 60 shouldThrow('stepDown("2010-02-10", "any", null)');
61 debug('Overflow/underflow'); 61 debug('Overflow/underflow');
62 shouldThrow('stepUp("2010-02-10", "3.40282346e+38", null)'); 62 shouldBeEqualToString('stepUp("2010-02-10", "3.40282346e+38", null)', '275760-09 -13');
63 shouldThrow('stepDown("2010-02-10", "3.40282346e+38", null)'); 63 shouldBeEqualToString('stepDown("2010-02-10", "3.40282346e+38", null)', '1970-01 -01');
64 shouldThrow('stepUp("2010-02-10", "1", "2010-02-10")'); 64 shouldBeEqualToString('stepUp("2010-02-10", "1", "2010-02-10")', '2010-02-10');
65 shouldThrow('stepDown("2010-02-10", "1", "2010-02-10")'); 65 shouldBeEqualToString('stepDown("2010-02-10", "1", "2010-02-10")', '2010-02-10') ;
66 66
67 debug(''); 67 debug('');
68 </script> 68 </script>
69 </body> 69 </body>
70 </html> 70 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698