Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(289)

Side by Side Diff: LayoutTests/svg/css/parse-length.html

Issue 980233002: [svg2] Make 'cx', 'cy' and 'r' presentation attributes (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: rebase Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | LayoutTests/svg/css/parse-length-expected.txt » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <html> 2 <html>
3 <style> 3 <style>
4 * { font-size: 16px; } 4 * { font-size: 16px; }
5 svg, rect { font-family: 'Ahem'; } 5 svg, rect { font-family: 'Ahem'; }
6 div { font-size: 8px; } 6 div { font-size: 8px; }
7 </style> 7 </style>
8 <html> 8 <html>
9 <svg id="svg" width="0" height="0"></svg> 9 <svg id="svg" width="0" height="0"></svg>
10 <script src="../../resources/js-test.js"></script> 10 <script src="../../resources/js-test.js"></script>
11 <script> 11 <script>
12 description("Test that 'length' presentation attribute values are parsed with CS S presentation rules."); 12 description("Test that 'length' presentation attribute values are parsed with CS S presentation rules.");
13 13
14 function computedStyle(property, value) { 14 function computedStyle(elementname, property, value) {
15 var rect = document.createElementNS('http://www.w3.org/2000/svg', 'rect'); 15 var elm = document.createElementNS('http://www.w3.org/2000/svg', elementname);
16 document.getElementById('svg').appendChild(rect); 16 document.getElementById('svg').appendChild(elm);
17 rect.setAttribute(property, value); 17 elm.setAttribute(property, value);
18 var computedValue = getComputedStyle(rect).getPropertyValue(property); 18 var computedValue = getComputedStyle(elm).getPropertyValue(property);
19 document.getElementById('svg').removeChild(rect); 19 document.getElementById('svg').removeChild(elm);
20 return computedValue; 20 return computedValue;
21 } 21 }
22 22
23 function testComputed(property, value, expected) { 23 function testComputed(elementname, property, value, expected) {
24 shouldBeEqualToString('computedStyle("' + property + '", "' + value + '")', expected); 24 shouldBeEqualToString('computedStyle("' + elementname + '", "' + property + '" , "' + value + '")', expected);
25 } 25 }
26 26
27 function negativeTest(property, value) { 27 function negativeTest(elementname, property, value) {
28 testComputed(property, value, "auto"); 28 testComputed(elementname, property, value, "auto");
29 } 29 }
30 30
31 function negativeTestZero(property, value) { 31 function negativeTestZero(elementname, property, value) {
32 testComputed(property, value, "0px"); 32 testComputed(elementname, property, value, "0px");
33 } 33 }
34 34
35 // Test 'x'. 35 function testAttributeOnElement(elementname, attributename) {
36 testComputed("x", " 100", "100px"); 36 testComputed(elementname, attributename, " 100", "100px");
37 testComputed("x", "100 ", "100px"); 37 testComputed(elementname, attributename, "100 ", "100px");
38 testComputed("x", "100px", "100px"); 38 testComputed(elementname, attributename, "100px", "100px");
39 testComputed("x", "1em", "16px"); 39 testComputed(elementname, attributename, "1em", "16px");
40 // testComputed("x", "1ex", "12.8000001907349px"); // enable this again once htt p://crbug.com/441840 is fixed 40 // testComputed(elementname, attributename, "1ex", "12.8000001907349px"); // e nable this again once http://crbug.com/441840 is fixed
41 testComputed("x", "20%", "20%"); 41 testComputed(elementname, attributename, "20%", "20%");
42 testComputed("x", "-200px", "-200px"); 42 testComputed(elementname, attributename, "-200px", "-200px");
43 43
44 // Test 'y'. 44 negativeTestZero(elementname, attributename, "auto", "auto");
45 testComputed("y", " 100", "100px"); 45 negativeTestZero(elementname, attributename, "100 px");
46 testComputed("y", "100 ", "100px"); 46 negativeTestZero(elementname, attributename, "100px;");
47 testComputed("y", "100px", "100px"); 47 negativeTestZero(elementname, attributename, "100px !important");
48 testComputed("y", "1em", "16px"); 48 negativeTestZero(elementname, attributename, "{ 100px }");
49 // testComputed("y", "1ex", "12.8000001907349px"); // enable this again once htt p://crbug.com/441840 is fixed 49 }
50 testComputed("y", "20%", "20%");
51 testComputed("y", "-200px", "-200px");
52 50
53 // Negative tests for 'x'. 51 var xyelements = [ "mask", "svg", "rect", "image", "foreignObject" ];
54 negativeTestZero("x", "auto", "auto"); 52 for (var elm of xyelements) {
55 negativeTestZero("x", "100 px"); 53 testAttributeOnElement(elm, "x");
56 negativeTestZero("x", "100px;"); 54 testAttributeOnElement(elm, "y");
57 negativeTestZero("x", "100px !important"); 55 }
58 negativeTestZero("x", "{ 100px }");
59 56
60 // Negative tests for 'y'. 57 var rxryelements = [ "rect", "ellipse" ];
61 negativeTestZero("y", "auto"); 58 for (var elm of rxryelements) {
62 negativeTestZero("y", "100 px"); 59 testAttributeOnElement(elm, "rx");
63 negativeTestZero("y", "100px;"); 60 testAttributeOnElement(elm, "ry");
64 negativeTestZero("y", "100px !important"); 61 }
65 negativeTestZero("y", "{ 100px }");
66 62
67 // Test 'rx'. 63 testAttributeOnElement("circle", "r");
68 testComputed("rx", " 100", "100px");
69 testComputed("rx", "100 ", "100px");
70 testComputed("rx", "100px", "100px");
71 testComputed("rx", "1em", "16px");
72 // testComputed("rx", "1ex", "12.8000001907349px"); // enable this again once ht tp://crbug.com/441840 is fixed
73 testComputed("rx", "20%", "20%");
74 testComputed("rx", "-200px", "-200px");
75
76 // Test 'ry'.
77 testComputed("ry", " 100", "100px");
78 testComputed("ry", "100 ", "100px");
79 testComputed("ry", "100px", "100px");
80 testComputed("ry", "1em", "16px");
81 // testComputed("ry", "1ex", "12.8000001907349px"); // enable this again once ht tp://crbug.com/441840 is fixed
82 testComputed("ry", "20%", "20%");
83 testComputed("ry", "-200px", "-200px");
84
85 // Negative tests for 'rx'.
86 negativeTestZero("rx", "auto", "auto");
87 negativeTestZero("rx", "100 px");
88 negativeTestZero("rx", "100px;");
89 negativeTestZero("rx", "100px !important");
90 negativeTestZero("rx", "{ 100px }");
91
92 // Negative tests for 'ry'.
93 negativeTestZero("ry", "auto");
94 negativeTestZero("ry", "100 px");
95 negativeTestZero("ry", "100px;");
96 negativeTestZero("ry", "100px !important");
97 negativeTestZero("ry", "{ 100px }");
98 </script> 64 </script>
99 </body> 65 </body>
100 </html> 66 </html>
OLDNEW
« no previous file with comments | « no previous file | LayoutTests/svg/css/parse-length-expected.txt » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698