60 lines
3.0 KiB
Plaintext
60 lines
3.0 KiB
Plaintext
Tests for .valueAsNumber with <input type=number>.
|
|
|
|
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
|
|
|
|
|
|
PASS valueAsNumberFor("0") is 0
|
|
PASS valueAsNumberFor("0.2") is 0.2
|
|
PASS valueAsNumberFor(".2") is 0.2
|
|
PASS valueAsNumberFor("10") is 10
|
|
PASS valueAsNumberFor("01") is 1
|
|
PASS valueAsNumberFor("-0") is 0
|
|
PASS valueAsNumberFor("-1.2") is -1.2
|
|
PASS valueAsNumberFor("1.2E10") is 1.2E10
|
|
PASS valueAsNumberFor("1.2E-10") is 1.2E-10
|
|
PASS valueAsNumberFor("1.2E+10") is 1.2E10
|
|
PASS valueAsNumberFor("123456789012345678901234567890123456789") is 1.2345678901234568E+38
|
|
PASS valueAsNumberFor("0.12345678901234567890123456789012345678901234567890") is 0.123456789012345678
|
|
valueAsNumber for invalid string values:
|
|
PASS isNaN(valueAsNumberFor("")) is true
|
|
PASS isNaN(valueAsNumberFor("abc")) is true
|
|
PASS isNaN(valueAsNumberFor("0xff")) is true
|
|
PASS isNaN(valueAsNumberFor("+1")) is true
|
|
PASS isNaN(valueAsNumberFor(" 10")) is true
|
|
PASS isNaN(valueAsNumberFor("10 ")) is true
|
|
PASS isNaN(valueAsNumberFor(".")) is true
|
|
PASS isNaN(valueAsNumberFor("1E")) is true
|
|
PASS isNaN(valueAsNumberFor("NaN")) is true
|
|
PASS isNaN(valueAsNumberFor("nan")) is true
|
|
PASS isNaN(valueAsNumberFor("Inf")) is true
|
|
PASS isNaN(valueAsNumberFor("inf")) is true
|
|
PASS isNaN(valueAsNumberFor("Infinity")) is true
|
|
PASS isNaN(valueAsNumberFor("infinity")) is true
|
|
Too huge exponent to support
|
|
PASS isNaN(valueAsNumberFor("1.2E65535")) is true
|
|
Tests for the valueAsNumber setter:
|
|
PASS setValueAsNumberAndGetValue(0) is "0"
|
|
PASS setValueAsNumberAndGetValue(10) is "10"
|
|
PASS setValueAsNumberAndGetValue(01) is "1"
|
|
PASS setValueAsNumberAndGetValue(-0) is "0"
|
|
PASS setValueAsNumberAndGetValue(-1.2) is "-1.2"
|
|
PASS setValueAsNumberAndGetValue(1.2e10) is "12000000000"
|
|
PASS setValueAsNumberAndGetValue(1.2e-10) is "1.2e-10"
|
|
PASS setValueAsNumberAndGetValue(1.2345678901234567e+38) is "1.2345678901234567e+38"
|
|
PASS setValueAsNumberAndGetValue("-3.40282346e+38") is "-3.40282346e+38"
|
|
PASS setValueAsNumberAndGetValue("-3.40282348e+38") threw exception InvalidStateError: The object is in an invalid state..
|
|
PASS setValueAsNumberAndGetValue("3.40282346e+38") is "3.40282346e+38"
|
|
PASS setValueAsNumberAndGetValue("3.40282348e+38") threw exception InvalidStateError: The object is in an invalid state..
|
|
Tests to set invalid values to valueAsNumber:
|
|
PASS setValueAsNumberAndGetValue(null) is "0"
|
|
PASS setValueAsNumberAndGetValue("foo") threw exception NotSupportedError: The operation is not supported..
|
|
PASS setValueAsNumberAndGetValue(NaN) threw exception NotSupportedError: The operation is not supported..
|
|
PASS setValueAsNumberAndGetValue(Number.NaN) threw exception NotSupportedError: The operation is not supported..
|
|
PASS setValueAsNumberAndGetValue(Infinity) threw exception NotSupportedError: The operation is not supported..
|
|
PASS setValueAsNumberAndGetValue(Number.POSITIVE_INFINITY) threw exception NotSupportedError: The operation is not supported..
|
|
PASS setValueAsNumberAndGetValue(Number.NEGATIVE_INFINITY) threw exception NotSupportedError: The operation is not supported..
|
|
PASS successfullyParsed is true
|
|
|
|
TEST COMPLETE
|
|
|