Check stepUp() and stepDown() behavior for type=datetime-local. On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". Invalid value PASS stepUp("", null, null) is "1970-01-01T00:01" PASS stepDown("", null, null) is "1969-12-31T23:59" Non-number arguments PASS stepUp("2010-02-10T20:13", null, null, "0") is "2010-02-10T20:13" PASS stepDown("2010-02-10T20:13", null, null, "0") is "2010-02-10T20:13" PASS stepUp("2010-02-10T20:13", null, null, "foo") is "2010-02-10T20:13" PASS stepDown("2010-02-10T20:13", null, null, "foo") is "2010-02-10T20:13" PASS stepUp("2010-02-10T20:13", null, null, null) is "2010-02-10T20:13" PASS stepDown("2010-02-10T20:13", null, null, null) is "2010-02-10T20:13" Normal cases PASS stepUp("2010-02-10T20:13", null, null) is "2010-02-10T20:14" PASS stepDown("2010-02-10T20:13", null, null) is "2010-02-10T20:12" PASS stepUp("2010-02-10T20:13", null, null, 10) is "2010-02-10T20:23" PASS stepDown("2010-02-10T20:13", null, null, 11) is "2010-02-10T20:02" PASS stepUp("1970-01-01T20:13", "4", null, 2) is "1970-01-01T20:13:08" PASS stepDown("1970-01-01T20:13", "4", null, 3) is "1970-01-01T20:12:48" Step=any PASS stepUp("2010-02-10T20:13", "any", null) threw exception InvalidStateError: Failed to execute 'stepUp' on 'HTMLInputElement': This form element does not have an allowed value step.. PASS stepDown("2010-02-10T20:13", "any", null) threw exception InvalidStateError: Failed to execute 'stepDown' on 'HTMLInputElement': This form element does not have an allowed value step.. Overflow/underflow PASS stepUp("2010-02-10T20:13", "3.40282346e+38", null) is "1970-01-01T00:00" PASS stepDown("2010-02-10T20:13", "3.40282346e+38", null) is "1970-01-01T00:00" PASS stepUp("2010-02-10T20:13", "1", "2010-02-10T20:13") is "2010-02-10T20:13" PASS stepDown("2010-02-10T20:13", "1", "2010-02-10T20:13") is "2010-02-10T20:13" PASS successfullyParsed is true TEST COMPLETE