blob: 69b0607a8fe9d736b2a2b8da18388c0acedf842e [file] [log] [blame]
Check stepUp() and stepDown() bahevior for number type.
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
Number type
Invalid value
PASS stepUp("", null, null) is "1"
PASS stepDown("", null, null) is "-1"
Non-number arguments
PASS stepUp("0", null, null, "0") is "0"
PASS stepDown("0", null, null, "0") is "0"
PASS stepUp("0", null, null, "foo") is "0"
PASS stepDown("0", null, null, "foo") is "0"
PASS stepUp("0", null, null, null) is "0"
PASS stepDown("0", null, null, null) is "0"
Normal cases
PASS stepUp("0", null, null) is "1"
PASS stepUp("1", null, null, 2) is "3"
PASS stepUp("3", null, null, -1) is "2"
PASS stepDown("2", null, null) is "1"
PASS stepDown("1", null, null, 2) is "-1"
PASS stepDown("-1", null, null, -1) is "0"
Fractional cases
PASS stepUp("0.1", 1, null) is "1.1"
PASS stepUp("0.2", 1, null) is "1.2"
PASS stepUp("1.0", 1, null) is "2"
PASS stepUp("1.1", 1, null) is "2.1"
PASS stepUp("1.2", 1, null) is "2.2"
PASS stepUp("2.0", 1, null) is "3"
PASS stepUp("-0.1", 1, null) is "0.9"
PASS stepUp("-0.2", 1, null) is "0.8"
PASS stepUp("-1.0", 1, null) is "0"
PASS stepUp("-1.1", 1, null) is "-0.1"
PASS stepUp("-1.2", 1, null) is "-0.2"
PASS stepUp("-2.0", 1, null) is "-1"
PASS stepDown("0.1", 1, null) is "-0.9"
PASS stepDown("0.2", 1, null) is "-0.8"
PASS stepDown("1.0", 1, null) is "0"
PASS stepDown("1.1", 1, null) is "0.1"
PASS stepDown("1.2", 1, null) is "0.2"
PASS stepDown("2.0", 1, null) is "1"
PASS stepDown("-0.1", 1, null) is "-1.1"
PASS stepDown("-0.2", 1, null) is "-1.2"
PASS stepDown("-1.0", 1, null) is "-2"
PASS stepDown("-1.1", 1, null) is "-2.1"
PASS stepDown("-1.2", 1, null) is "-2.2"
PASS stepDown("-2.0", 1, null) is "-3"
PASS stepUp(".1", 1, null) is "1.1"
PASS stepUp(".2", 1, null) is "1.2"
PASS stepUp("1.", 1, null) is "1"
PASS stepUp("2.", 1, null) is "1"
PASS stepUp("-.1", 1, null) is "0.9"
PASS stepUp("-.2", 1, null) is "0.8"
PASS stepUp("-1.", 1, null) is "1"
PASS stepUp("-2.", 1, null) is "1"
PASS stepDown(".1", 1, null) is "-0.9"
PASS stepDown(".2", 1, null) is "-0.8"
PASS stepDown("1.", 1, null) is "-1"
PASS stepDown("2.", 1, null) is "-1"
PASS stepDown("-.1", 1, null) is "-1.1"
PASS stepDown("-.2", 1, null) is "-1.2"
PASS stepDown("-1.", 1, null) is "-1"
PASS stepDown("-2.", 1, null) is "-1"
PASS stepUp("0.1", .1, null) is "0.2"
PASS stepUp("0.2", .1, null) is "0.3"
PASS stepUp("1.0", .1, null) is "1.1"
PASS stepUp("1.1", .1, null) is "1.2"
PASS stepUp("1.2", .1, null) is "1.3"
PASS stepUp("2.0", .1, null) is "2.1"
PASS stepUp("-0.1", .1, null) is "0"
PASS stepUp("-0.2", .1, null) is "-0.1"
PASS stepUp("-1.0", .1, null) is "-0.9"
PASS stepUp("-1.1", .1, null) is "-1"
PASS stepUp("-1.2", .1, null) is "-1.1"
PASS stepUp("-2.0", .1, null) is "-1.9"
PASS stepDown("0.1", .1, null) is "0"
PASS stepDown("0.2", .1, null) is "0.1"
PASS stepDown("1.0", .1, null) is "0.9"
PASS stepDown("1.1", .1, null) is "1"
PASS stepDown("1.2", .1, null) is "1.1"
PASS stepDown("2.0", .1, null) is "1.9"
PASS stepDown("-0.1", .1, null) is "-0.2"
PASS stepDown("-0.2", .1, null) is "-0.3"
PASS stepDown("-1.0", .1, null) is "-1.1"
PASS stepDown("-1.1", .1, null) is "-1.2"
PASS stepDown("-1.2", .1, null) is "-1.3"
PASS stepDown("-2.0", .1, null) is "-2.1"
PASS stepUp(".1", .1, null) is "0.2"
PASS stepUp(".2", .1, null) is "0.3"
PASS stepUp("1.", .1, null) is "0.1"
PASS stepUp("2.", .1, null) is "0.1"
PASS stepUp("-.1", .1, null) is "0"
PASS stepUp("-.2", .1, null) is "-0.1"
PASS stepUp("-1.", .1, null) is "0.1"
PASS stepUp("-2.", .1, null) is "0.1"
PASS stepDown(".1", .1, null) is "0"
PASS stepDown(".2", .1, null) is "0.1"
PASS stepDown("1.", .1, null) is "-0.1"
PASS stepDown("2.", .1, null) is "-0.1"
PASS stepDown("-.1", .1, null) is "-0.2"
PASS stepDown("-.2", .1, null) is "-0.3"
PASS stepDown("-1.", .1, null) is "-0.1"
PASS stepDown("-2.", .1, null) is "-0.1"
Extra arguments
PASS input.value = "0"; input.min = null; input.step = null; input.stepUp(1, 2); input.value is "1"
PASS input.value = "1"; input.stepDown(1, 3); input.value is "0"
Invalid step value
PASS stepUp("0", "foo", null) is "1"
PASS stepUp("1", "0", null) is "2"
PASS stepUp("2", "-1", null) is "3"
Step=any
PASS stepUp("0", "any", null) threw exception InvalidStateError: The object is in an invalid state..
PASS stepDown("0", "any", null) threw exception InvalidStateError: The object is in an invalid state..
Step=any corner case
PASS stepUpExplicitBounds("0", "100", "any", "1.5", "1") threw exception InvalidStateError: The object is in an invalid state..
PASS stepDownExplicitBounds("0", "100", "any", "1.5", "1") threw exception InvalidStateError: The object is in an invalid state..
Overflow/underflow
PASS stepDown("1", "1", "0") is "0"
PASS stepDown("0", "1", "0") is "0"
PASS stepDown("1", "1", "0", 2) is "0"
PASS input.value is "0"
PASS stepDown("1", "3.40282346e+38", "", 2) is "-3.40282346e+38"
PASS stepUp("-1", "1", "0") is "0"
PASS stepUp("0", "1", "0") is "0"
PASS stepUp("-1", "1", "0", 2) is "0"
PASS input.value is "0"
PASS stepUp("1", "3.40282346e+38", "", 2) is "3.40282346e+38"
stepDown()/stepUp() for stepMismatch values
PASS stepUp("1", "2", "") is "3"
PASS input.stepDown(); input.value is "1"
PASS input.min = "0"; stepUp("9", "10", "", 9) is "99"
PASS stepDown("19", "10", "0") is "9"
PASS stepUp("89", "10", "99") is "99"
Huge value and small step
PASS input.min = ""; stepUp("1e+38", "1", "", 999999) is "1e+38"
PASS input.max = ""; stepDown("1e+38", "1", "", 999999) is "1e+38"
Fractional numbers
PASS input.min = ""; stepUp("0", "0.33333333333333333", "", 3) is "1"
PASS stepUp("1", "0.1", "", 10) is "2"
PASS input.stepUp(); input.stepUp(); input.stepUp(); input.stepUp(); input.stepUp(); input.stepUp(); input.stepUp(); input.stepUp(); input.stepUp(); input.stepUp(); input.value is "3"
PASS input.min = "0"; stepUp("0", "0.003921568627450980", "1", 255) is "1"
PASS for (var i = 0; i < 255; i++) { input.stepDown(); }; input.value is "0"
Rounding
PASS stepUp("5.005", "0.005", "", 2) is "5.015"
PASS stepUp("5.005", "0.005", "", 11) is "5.06"
PASS stepUp("5.005", "0.005", "", 12) is "5.065"
PASS stepUpExplicitBounds("4", "9", "0.005", "5.005", 2) is "5.015"
PASS stepUpExplicitBounds("4", "9", "0.005", "5.005", 11) is "5.06"
PASS stepUpExplicitBounds("4", "9", "0.005", "5.005", 12) is "5.065"
PASS successfullyParsed is true
TEST COMPLETE