tests: Add parseFloat tests

This commit is contained in:
Mike Welsh 2020-12-18 01:23:28 -08:00
parent 80d5d9cd0a
commit 042e9a444b
4 changed files with 45 additions and 0 deletions

View File

@ -467,6 +467,7 @@ swf_tests_approx! {
(stage_object_properties, "avm1/stage_object_properties", 6, epsilon = 0.051), (stage_object_properties, "avm1/stage_object_properties", 6, epsilon = 0.051),
(stage_object_properties_swf6, "avm1/stage_object_properties_swf6", 4, epsilon = 0.051), (stage_object_properties_swf6, "avm1/stage_object_properties_swf6", 4, epsilon = 0.051),
(movieclip_getbounds, "avm1/movieclip_getbounds", 1, epsilon = 0.051), (movieclip_getbounds, "avm1/movieclip_getbounds", 1, epsilon = 0.051),
(parse_float, "avm1/parse_float", 1, max_relative = 5.0 * std::f64::EPSILON),
(edittext_letter_spacing, "avm1/edittext_letter_spacing", 1, epsilon = 15.0), // TODO: Discrepancy in wrapping in letterSpacing = 0.1 test. (edittext_letter_spacing, "avm1/edittext_letter_spacing", 1, epsilon = 15.0), // TODO: Discrepancy in wrapping in letterSpacing = 0.1 test.
(edittext_align, "avm1/edittext_align", 1, epsilon = 3.0), (edittext_align, "avm1/edittext_align", 1, epsilon = 3.0),
(edittext_margins, "avm1/edittext_margins", 1, epsilon = 5.0), // TODO: Discrepancy in wrapping. (edittext_margins, "avm1/edittext_margins", 1, epsilon = 5.0), // TODO: Discrepancy in wrapping.

View File

@ -0,0 +1,44 @@
// parseFloat("12345")
12345
// parseFloat("012345.67890")
12345.6789
// parseFloat(" 99999.99999 ")
99999.99999
// parseFloat("-22222222222222222")
-2.22222222222222e+16
// parseFloat(".0000000000000000000000005")
5e-25
// parseFloat("0000.12345GIBBERISH")
0.12345
// parseFloat("9e99999")
Infinity
// parseFloat("+100e-100")
1e-98
// parseFloat("-123.234E+66")
-1.23234e+68
// parseFloat(".2E20E1")
2e+19
// parseFloat("1.2345.678")
1.2345678
// parseFloat("1.2345.6e50")
1.23456
// parseFloat("-034.1+e20")
-34.1
// parseFloat("e10")
NaN
// parseFloat("BADBAD")
NaN
// parseFloat("-")
NaN
// parseFloat("0xff")
0
// parseFloat("Infinity")
NaN
// parseFloat(true)
NaN
// parseFloat(1.2)
1.2
// parseFloat(Infinity)
NaN
// parseFloat({toString})
5

Binary file not shown.

Binary file not shown.