2 <title>Whitespace in attribute values tests
</title>
3 <script src=../../resources/testharness.js
></script>
4 <script src=../../resources/testharnessreport.js
></script>
5 <script src=resources/whitespace-helper.js
></script>
6 <svg id=
"testcontainer">
11 <feTurbulence></feTurbulence>
17 var svg
= document
.querySelector("svg");
20 var EPSILON
= Math
.pow(2, -24); // float epsilon
21 var whitespace
= [ "", " ", " ", "\r\n\t ", "\f" ];
22 var garbage
= [ "a", "e", "foo", ")90" ];
23 var validunits
= [ "", "em", "ex", "px", "in", "cm", "mm", "pt", "pc", "%" ];
26 document
.querySelector("stop"),
28 0, // expected default value
30 [ "-47", ".1", "0.35", "1e-10", "+32", "+17E-1", "17e+2" ], // valid
31 [ Number
.NaN
, Number
.POSITIVE_INFINITY
, Number
.NEGATIVE_INFINITY
, "fnord", "E", "e", "e+", "E-", "-", "+", "-.", ".-", ".", "+.", ".E0", "e1" ], // invalid
32 [ "" ], // valid units
34 function(elm
, value
) { assert_approx_equals(elm
.offset
.baseVal
, parseFloat(value
), EPSILON
); },
35 function(elm
, expected
) { assert_approx_equals(elm
.offset
.baseVal
, expected
, EPSILON
); } );
37 testType("<percentage>",
38 document
.querySelector("stop"),
40 0, // expected default value
42 [ "-47", ".1", "0.35", "1e-10", "+32", "+17E-1", "17e+2" ], // valid
43 [ Number
.NaN
, Number
.POSITIVE_INFINITY
, Number
.NEGATIVE_INFINITY
, "fnord", "E", "e", "e+", "E-", "-", "+", "-.", ".-", ".", "+.", ".E0", "e1" ], // invalid
44 [ "%" ], // valid units
46 function(elm
, value
) { assert_approx_equals(elm
.offset
.baseVal
, parseFloat(value
)/ 100, EPSILON
); },
47 function(elm
, expected
) { assert_approx_equals(elm
.offset
.baseVal
, expected
, EPSILON
); } );