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

Side by Side Diff: LayoutTests/fast/css-grid-layout/grid-template-shorthand-get-set.html

Issue 149373004: [CSS Grid Layout] Implementation of the grid-template shorthand. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@grid-template-working
Patch Set: Added the new property to the ones runtime enabled only. Created 6 years, 8 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
OLDNEW
(Empty)
1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
2 <html>
3 <head>
4 <link href="resources/grid.css" rel="stylesheet">
5 <style>
6 #gridTemplateWithNone {
7 grid-template: none;
8 }
9 #gridTemplateSimpleForm {
10 grid-template: 10px / 15px;
11 }
12 #gridTemplateSimpleFormWithNoneColumns {
13 grid-template: none / 15px;
14 }
15 #gridTemplateSimpleFormWithNoneRows {
16 grid-template: 10px / none;
17 }
18 #gridTemplateSimpleFormWithNone {
19 grid-template: none / none;
20 }
21 #gridTemplateComplexForm {
22 grid-template: 10px / "a" 15px;
23 }
24 #gridTemplateComplexFormWithLineNames {
25 grid-template: 10px / (head) "a" 15px (tail);
26 }
27 #gridTemplateComplexFormWithLineNamesMultipleColumns {
28 grid-template: 10px / (head) "a b" 15px (tail)
29 }
30 #gridTemplateComplexFormWithLineNamesMultipleRows {
31 grid-template: 10px / (head1) "a" 15px (tail1)
32 (head2) "b" 20px (tail2);
33 }
34 #gridTemplateComplexFormWithLineNamesMultipleRowsAndColumns {
35 grid-template: (first) 10px repeat(2, (nav nav2) 15px) / "a b c" 100px (nav)
36 (nav2) "d e f" 25px (nav)
37 (nav2) "g h i" 25px (last);
38 }
39 #gridTemplateComplexFormWithAuto {
40 grid-template: 10px / "a";
41 }
42 #gridTemplateComplexFormOnlyAreas {
43 grid-template: "a";
44 }
45
46 /* Bad values. */
47
48 #gridTemplateMultipleSlash {
49 grid-template: 10px / 20px / 30px;
50 }
51 #gridTemplateSimpleFormJustColumns {
52 grid-template: 10px;
53 }
54 #gridTemplateSimpleFormNoRows {
55 grid-template: 10px /;
56 }
57 #gridTemplateSimpleFormNoColumns {
58 grid-template: / 10px;
59 }
60 #gridTemplateSimpleFormNoColumnSize {
61 grid-template: (line) / 10px;
62 }
63 #gridTemplateSimpleFormWithFitContent {
64 grid-template: -webkit-fit-content / 10px;
65 }
66 #gridTemplateSimpleFormWithWrongRepeat {
67 grid-template: repeat(2, 50% (title) a) / 10px;
68 }
69 #gridTemplateSimpleFormWithMisplacedNone1 {
70 grid-template: 10px / none 20px;
71 }
72 #gridTemplateSimpleFormWithMisplacedNone2 {
73 grid-template: 10px / 20px none;
74 }
75 #gridTemplateSimpleFormWithMisplacedNone3 {
76 grid-template: none 10px / 20px;
77 }
78 #gridTemplateSimpleFormWithMisplacedNone4 {
79 grid-template: 10px none / 20px;
80 }
81 #gridTemplateComplexFormWithRepeat {
82 grid-template: 10px / "a" repeat(2, 50% (title));
83 }
84 #gridTemplateComplexFormWithWrongRepeat {
85 grid-template: repeat(2, 50% (title) a) / "a";
86 }
87 #griTemplateComplexFormdWithFitAvailable {
88 grid-template: -webkit-fit-available / "a";
89 }
90 #gridTemplateComplexFormNoColumnSize {
91 grid-template: (line) / "a";
92 }
93 #gridTemplateComplexFormMisplacedRowsSize1 {
94 grid-template: 25px / 10px "a";
95 }
96 #gridTemplateComplexFormMisplacedRowsSize2 {
97 grid-template: 25px / "a" (name) 10px;
98 }
99 #gridTemplateComplexFormColumnsNotParsing1 {
100 grid-template: a / "a" (name) 10px;
101 }
102 #gridTemplateComplexFormColumnsNotParsing2 {
103 grid-template: "B" / "a" (name) 10px;
104 }
105 #gridTemplateComplexFormWithNoneColumns {
106 grid-template: none / "a" (name) 10px;
107 }
108
109 </style>
110 <script src="../../resources/js-test.js"></script>
111 </head>
112 <body>
113 <div class="grid" id="gridTemplateWithNone"></div>
114 <div class="grid" id="gridTemplateSimpleForm"></div>
115 <div class="grid" id="gridTemplateSimpleFormWithNoneColumns"></div>
116 <div class="grid" id="gridTemplateSimpleFormWithNoneRows"></div>
117 <div class="grid" id="gridTemplateSimpleFormWithNone"></div>
118 <div class="grid" id="gridTemplateComplexForm"></div>
119 <div class="grid" id="gridTemplateComplexFormWithLineNames"></div>
120 <div class="grid" id="gridTemplateComplexFormWithLineNamesMultipleColumns"></div >
121 <div class="grid" id="gridTemplateComplexFormWithLineNamesMultipleRows"></div>
122 <div class="grid" id="gridTemplateComplexFormWithLineNamesMultipleRowsAndColumns "></div>
123 <div class="grid" id="gridTemplateComplexFormWithAuto"></div>
124 <div class="grid" id="gridTemplateComplexFormOnlyAreas"></div>
125 <div class="grid" id="gridTemplateMultipleSlash"></div>
126 <div class="grid" id="gridTemplateSimpleFormJustColumns"></div>
127 <div class="grid" id="gridTemplateSimpleFormNoRows"></div>
128 <div class="grid" id="gridTemplateSimpleFormNoColumns"></div>
129 <div class="grid" id="gridTemplateSimpleFormNoColumnSize"></div>
130 <div class="grid" id="gridTemplateSimpleFormWithFitContent"></div>
131 <div class="grid" id="gridTemplateSimpleFormWithWrongRepeat"></div>
132 <div class="grid" id="gridTemplateSimpleFormWithMisplacedNone1"></div>
133 <div class="grid" id="gridTemplateSimpleFormWithMisplacedNone2"></div>
134 <div class="grid" id="gridTemplateSimpleFormWithMisplacedNone3"></div>
135 <div class="grid" id="gridTemplateSimpleFormWithMisplacedNone4"></div>
136 <div class="grid" id="gridTemplateComplexFormWithRepeat"></div>
137 <div class="grid" id="gridTemplateComplexFormWithWrongRepeat"></div>
138 <div class="grid" id="griTemplateComplexFormdWithFitAvailable"></div>
139 <div class="grid" id="gridTemplateComplexFormNoColumnSize"></div>
140 <div class="grid" id="gridTemplateComplexFormMisplacedRowsSize1"></div>
141 <div class="grid" id="gridTemplateComplexFormMisplacedRowsSize2"></div>
142 <div class="grid" id="gridTemplateComplexFormColumnsNotParsing1"></div>
143 <div class="grid" id="gridTemplateComplexFormColumnsNotParsing2"></div>
144 <div class="grid" id="gridTemplateComplexFormWithNoneColumns"></div>
145 <script src="resources/grid-template-shorthand-parsing-utils.js"></script>
146 <script>
147 description("This test checks that the 'grid-template' shorthand is properly parsed and the longhand properties correctly assigned.");
148
149 debug("Test getting grid-template-areas set through CSS.");
150 testGridDefinitionsValues(document.getElementById("gridTemplateWithNone"), " none", "none", "none");
151 testGridDefinitionsValues(document.getElementById("gridTemplateSimpleForm"), "10px", "15px", "none");
152 testGridDefinitionsValues(document.getElementById("gridTemplateSimpleFormWit hNoneColumns"), "none", "15px", "none");
153 testGridDefinitionsValues(document.getElementById("gridTemplateSimpleFormWit hNoneRows"), "10px", "none", "none");
154 testGridDefinitionsValues(document.getElementById("gridTemplateSimpleFormWit hNone"), "none", "none", "none");
155 testGridDefinitionsValues(document.getElementById("gridTemplateComplexForm") , "10px", "15px", '"a"');
156 testGridDefinitionsValues(document.getElementById("gridTemplateComplexFormWi thLineNames"), "10px", "(head) 15px (tail)", '"a"');
157 testGridDefinitionsValues(document.getElementById("gridTemplateComplexFormWi thLineNamesMultipleColumns"), "10px", "(head) 15px (tail)", '"a b"');
158 testGridDefinitionsValues(document.getElementById("gridTemplateComplexFormWi thLineNamesMultipleRows"), "10px", "(head1) 15px (tail1 head2) 20px (tail2)", '" a" "b"');
159 testGridDefinitionsValues(document.getElementById("gridTemplateComplexFormWi thLineNamesMultipleRowsAndColumns"), "(first) 10px (nav nav2) 15px (nav nav2) 15 px", "100px (nav nav2) 25px (nav nav2) 25px (last)", '"a b c" "d e f" "g h i"');
160 testGridDefinitionsValues(document.getElementById("gridTemplateComplexFormWi thAuto"), "10px", "0px", '"a"');
161 testGridDefinitionsValues(document.getElementById("gridTemplateComplexFormOn lyAreas"), "none", "0px", '"a"');
162
163 debug("");
164 debug("Test getting wrong values for grid-template shorthand through CSS (th ey should resolve to the default: 'none')");
165 testGridDefinitionsValues(document.getElementById("gridTemplateMultipleSlash "), "none", "none", "none");
166 testGridDefinitionsValues(document.getElementById("gridTemplateSimpleFormJus tColumns"), "none", "none", "none");
167 testGridDefinitionsValues(document.getElementById("gridTemplateSimpleFormNoR ows"), "none", "none", "none");
168 testGridDefinitionsValues(document.getElementById("gridTemplateSimpleFormNoC olumns"), "none", "none", "none");
169 testGridDefinitionsValues(document.getElementById("gridTemplateSimpleFormNoC olumnSize"), "none", "none", "none");
170 testGridDefinitionsValues(document.getElementById("gridTemplateSimpleFormWit hFitContent"), "none", "none", "none");
171 testGridDefinitionsValues(document.getElementById("gridTemplateSimpleFormWit hWrongRepeat"), "none", "none", "none");
172 testGridDefinitionsValues(document.getElementById("gridTemplateSimpleFormWit hMisplacedNone1"), "none", "none", "none");
173 testGridDefinitionsValues(document.getElementById("gridTemplateSimpleFormWit hMisplacedNone2"), "none", "none", "none");
174 testGridDefinitionsValues(document.getElementById("gridTemplateSimpleFormWit hMisplacedNone3"), "none", "none", "none");
175 testGridDefinitionsValues(document.getElementById("gridTemplateSimpleFormWit hMisplacedNone4"), "none", "none", "none");
176 testGridDefinitionsValues(document.getElementById("gridTemplateComplexFormWi thRepeat"), "none", "none", "none");
177 testGridDefinitionsValues(document.getElementById("gridTemplateComplexFormWi thWrongRepeat"), "none", "none", "none");
178 testGridDefinitionsValues(document.getElementById("griTemplateComplexFormdWi thFitAvailable"), "none", "none", "none");
179 testGridDefinitionsValues(document.getElementById("gridTemplateComplexFormNo ColumnSize"), "none", "none", "none");
180 testGridDefinitionsValues(document.getElementById("gridTemplateComplexFormMi splacedRowsSize1"), "none", "none", "none");
181 testGridDefinitionsValues(document.getElementById("gridTemplateComplexFormMi splacedRowsSize2"), "none", "none", "none");
182 testGridDefinitionsValues(document.getElementById("gridTemplateComplexFormCo lumnsNotParsing1"), "none", "none", "none");
183 testGridDefinitionsValues(document.getElementById("gridTemplateComplexFormCo lumnsNotParsing2"), "none", "none", "none");
184 testGridDefinitionsValues(document.getElementById("gridTemplateComplexFormWi thNoneColumns"), "none", "none", "none");
185
186 debug("");
187 debug("Test the initial value");
188 var element = document.createElement("div");
189 document.body.appendChild(element);
190 testGridDefinitionsValues(element, "none", "none", "none");
191 shouldBe("getComputedStyle(element, '').getPropertyValue('grid-template-colu mns')", "'none'");
192 shouldBe("getComputedStyle(element, '').getPropertyValue('grid-template-rows ')", "'none'");
193 shouldBe("getComputedStyle(element, '').getPropertyValue('grid-template-area s')", "'none'");
194
195 debug("");
196 debug("Test setting grid-template-columns and grid-template-rows back to 'no ne' through JS");
197 testGridDefinitionsSetJSValues("10px / (line) 'a' 20px", "10px", "(line) 20p x", "\"a\"");
198 testGridDefinitionsSetJSValues("none", "none", "none", "none");
199
200 debug("");
201 debug("Test getting and setting grid-template shorthand through JS");
202 testGridDefinitionsSetJSValues("18px / 66px", "18px", "66px", "none");
203 testGridDefinitionsSetJSValues("10px / (head) 'a' 15px (tail)", "10px", "(he ad) 15px (tail)", "\"a\"");
204 testGridDefinitionsSetJSValues("'a'", "none", "0px", "\"a\"", "none", "auto" );
205
206 debug("");
207 debug("Test setting grid-template shorthand to bad values through JS");
208 testGridDefinitionsSetBadJSValues("none / 'a'");
209 testGridDefinitionsSetBadJSValues("25px / 'a' (name) 10px");
210 testGridDefinitionsSetBadJSValues("'a' / 'b'");
211 testGridDefinitionsSetBadJSValues("15px");
212 testGridDefinitionsSetBadJSValues("15px / 20px none");
213 testGridDefinitionsSetBadJSValues("25px / 10px 'a'");
214
215 </script>
216 </body>
217 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698