OLD | NEW |
1 description("Test scientific numbers on <length> values for SVG presentation att
ributes.") | 1 description("Test scientific numbers on <length> values for SVG presentation att
ributes.") |
2 if (window.testRunner) | 2 if (window.testRunner) |
3 testRunner.dumpAsText(); | 3 testRunner.dumpAsText(); |
4 createSVGTestCase(); | 4 createSVGTestCase(); |
5 | 5 |
6 var text = createSVGElement("text"); | 6 var text = createSVGElement("text"); |
7 text.setAttribute("id", "text"); | 7 text.setAttribute("id", "text"); |
8 text.setAttribute("x", "100px"); | 8 text.setAttribute("x", "100px"); |
9 text.setAttribute("y", "100px"); | 9 text.setAttribute("y", "100px"); |
10 rootSVGElement.appendChild(text); | 10 rootSVGElement.appendChild(text); |
11 | 11 |
12 function test(valueString, expectedValue) { | 12 function test(valueString, expectedValue) { |
13 // Reset baseline-shift to baseline. | 13 // Reset baseline-shift to baseline. |
14 text.style.baselineShift = "baseline"; | 14 text.style.baselineShift = "baseline"; |
15 shouldBeEqualToString("text.style.baselineShift", "baseline"); | 15 shouldBeEqualToString("text.style.baselineShift", "baseline"); |
16 | 16 |
17 // Run test | 17 // Run test |
18 text.style.baselineShift = valueString; | 18 text.style.baselineShift = valueString; |
19 shouldBeEqualToString("text.style.baselineShift", expectedValue); | 19 shouldBeEqualToString("text.style.baselineShift", expectedValue); |
20 } | 20 } |
21 | 21 |
22 debug(""); | 22 debug(""); |
23 debug("Test positive exponent values with 'e'"); | 23 debug("Test positive exponent values with 'e'"); |
24 test(".5e2", "50px"); | 24 test(".5e2", "50"); |
25 test("5e1", "50px"); | 25 test("5e1", "50"); |
26 test("0.5e2", "50px"); | 26 test("0.5e2", "50"); |
27 test("+.5e2", "50px"); | 27 test("+.5e2", "50"); |
28 test("+5e1", "50px"); | 28 test("+5e1", "50"); |
29 test("+0.5e2", "50px"); | 29 test("+0.5e2", "50"); |
30 test(".5e+2", "50px"); | 30 test(".5e+2", "50"); |
31 test("5e+1", "50px"); | 31 test("5e+1", "50"); |
32 test("0.5e+2", "50px"); | 32 test("0.5e+2", "50"); |
33 | 33 |
34 debug(""); | 34 debug(""); |
35 debug("Test positive exponent values with 'E'"); | 35 debug("Test positive exponent values with 'E'"); |
36 test(".5E2", "50px"); | 36 test(".5E2", "50"); |
37 test("5E1", "50px"); | 37 test("5E1", "50"); |
38 test("0.5E2", "50px"); | 38 test("0.5E2", "50"); |
39 test("+.5E2", "50px"); | 39 test("+.5E2", "50"); |
40 test("+5E1", "50px"); | 40 test("+5E1", "50"); |
41 test("+0.5E2", "50px"); | 41 test("+0.5E2", "50"); |
42 test(".5E+2", "50px"); | 42 test(".5E+2", "50"); |
43 test("5E+1", "50px"); | 43 test("5E+1", "50"); |
44 test("0.5E+2", "50px"); | 44 test("0.5E+2", "50"); |
45 | 45 |
46 debug(""); | 46 debug(""); |
47 debug("Test negative exponent values with 'e'"); | 47 debug("Test negative exponent values with 'e'"); |
48 test("5000e-2", "50px"); | 48 test("5000e-2", "50"); |
49 test("500e-1", "50px"); | 49 test("500e-1", "50"); |
50 test("+5000e-2", "50px"); | 50 test("+5000e-2", "50"); |
51 test("+500e-1", "50px"); | 51 test("+500e-1", "50"); |
52 test("+5000e-2px", "50px"); | 52 test("+5000e-2px", "50px"); |
53 test("+500e-1px", "50px"); | 53 test("+500e-1px", "50px"); |
54 | 54 |
55 debug(""); | 55 debug(""); |
56 debug("Test negative exponent values with 'E'"); | 56 debug("Test negative exponent values with 'E'"); |
57 test("5000E-2", "50px"); | 57 test("5000E-2", "50"); |
58 test("500E-1", "50px"); | 58 test("500E-1", "50"); |
59 test("+5000E-2", "50px"); | 59 test("+5000E-2", "50"); |
60 test("+500E-1", "50px"); | 60 test("+500E-1", "50"); |
61 test("+5000.00E-2px", "50px"); | 61 test("+5000.00E-2px", "50px"); |
62 test("+500E-1px", "50px"); | 62 test("+500E-1px", "50px"); |
63 | 63 |
64 debug(""); | 64 debug(""); |
65 debug("Test negative numbers with exponents"); | 65 debug("Test negative numbers with exponents"); |
66 test("-.5e2px", "-50px"); | 66 test("-.5e2px", "-50px"); |
67 test("-0.5e2px", "-50px"); | 67 test("-0.5e2px", "-50px"); |
68 test("-500e-1px", "-50px"); | 68 test("-500e-1px", "-50px"); |
69 | 69 |
70 debug(""); | 70 debug(""); |
71 debug("Test if value and 'em' still works"); | 71 debug("Test if value and 'em' still works"); |
72 test("50em", "50em"); | 72 test("50em", "50em"); |
73 | 73 |
74 debug(""); | 74 debug(""); |
75 debug("Test if value and 'ex' still works"); | 75 debug("Test if value and 'ex' still works"); |
76 test("50ex", "50ex"); | 76 test("50ex", "50ex"); |
77 | 77 |
78 debug(""); | 78 debug(""); |
79 debug("Trailing and leading whitespaces"); | 79 debug("Trailing and leading whitespaces"); |
80 test(" 5e1", "50px"); | 80 test(" 5e1", "50"); |
81 test("5e1 ", "50px"); | 81 test("5e1 ", "50"); |
82 | 82 |
83 debug(""); | 83 debug(""); |
84 debug("Test behavior on overflow"); | 84 debug("Test behavior on overflow"); |
85 test("2E+500", "baseline"); | 85 test("2E+500", "baseline"); |
86 test("-2E+500", "baseline"); | 86 test("-2E+500", "baseline"); |
87 | 87 |
88 debug(""); | 88 debug(""); |
89 debug("Invalid values"); | 89 debug("Invalid values"); |
90 test("50e0.0", "baseline"); | 90 test("50e0.0", "baseline"); |
91 test("50 e0", "baseline"); | 91 test("50 e0", "baseline"); |
92 test("50e 0", "baseline"); | 92 test("50e 0", "baseline"); |
93 test("50.e0", "baseline"); | 93 test("50.e0", "baseline"); |
94 | 94 |
95 var successfullyParsed = true; | 95 var successfullyParsed = true; |
96 | 96 |
97 completeTest(); | 97 completeTest(); |
OLD | NEW |