@@ -25,18 +25,22 @@ test.only('options are not required', () => {
2525 const { components } = processPlugins ( [ container ( ) ] , config ( ) )
2626
2727 expect ( css ( components ) ) . toMatchCss ( `
28- .container { width: 100% }
29- @media (min-width: 576px) {
30- .container { max-width: 576px }
31- }
32- @media (min-width: 768px) {
33- .container { max-width: 768px }
34- }
35- @media (min-width: 992px) {
36- .container { max-width: 992px }
37- }
38- @media (min-width: 1200px) {
39- .container { max-width: 1200px }
28+ @layer components {
29+ @variants {
30+ .container { width: 100% }
31+ @media (min-width: 576px) {
32+ .container { max-width: 576px }
33+ }
34+ @media (min-width: 768px) {
35+ .container { max-width: 768px }
36+ }
37+ @media (min-width: 992px) {
38+ .container { max-width: 992px }
39+ }
40+ @media (min-width: 1200px) {
41+ .container { max-width: 1200px }
42+ }
43+ }
4044 }
4145 ` )
4246} )
@@ -54,12 +58,16 @@ test.only('screens can be passed explicitly', () => {
5458 )
5559
5660 expect ( css ( components ) ) . toMatchCss ( `
57- .container { width: 100% }
58- @media (min-width: 400px) {
59- .container { max-width: 400px }
60- }
61- @media (min-width: 500px) {
62- .container { max-width: 500px }
61+ @layer components {
62+ @variants {
63+ .container { width: 100% }
64+ @media (min-width: 400px) {
65+ .container { max-width: 400px }
66+ }
67+ @media (min-width: 500px) {
68+ .container { max-width: 500px }
69+ }
70+ }
6371 }
6472 ` )
6573} )
@@ -77,12 +85,16 @@ test.only('screens are ordered ascending by min-width', () => {
7785 )
7886
7987 expect ( css ( components ) ) . toMatchCss ( `
80- .container { width: 100% }
81- @media (min-width: 400px) {
82- .container { max-width: 400px }
83- }
84- @media (min-width: 500px) {
85- .container { max-width: 500px }
88+ @layer components {
89+ @variants {
90+ .container { width: 100% }
91+ @media (min-width: 400px) {
92+ .container { max-width: 400px }
93+ }
94+ @media (min-width: 500px) {
95+ .container { max-width: 500px }
96+ }
97+ }
8698 }
8799 ` )
88100} )
@@ -104,12 +116,16 @@ test.only('screens are deduplicated by min-width', () => {
104116 )
105117
106118 expect ( css ( components ) ) . toMatchCss ( `
107- .container { width: 100% }
108- @media (min-width: 576px) {
109- .container { max-width: 576px }
110- }
111- @media (min-width: 768px) {
112- .container { max-width: 768px }
119+ @layer components {
120+ @variants {
121+ .container { width: 100% }
122+ @media (min-width: 576px) {
123+ .container { max-width: 576px }
124+ }
125+ @media (min-width: 768px) {
126+ .container { max-width: 768px }
127+ }
128+ }
113129 }
114130 ` )
115131} )
@@ -127,22 +143,26 @@ test.only('the container can be centered by default', () => {
127143 )
128144
129145 expect ( css ( components ) ) . toMatchCss ( `
130- .container {
131- width: 100%;
132- margin-right: auto;
133- margin-left: auto
134- }
135- @media (min-width: 576px) {
136- .container { max-width: 576px }
137- }
138- @media (min-width: 768px) {
139- .container { max-width: 768px }
140- }
141- @media (min-width: 992px) {
142- .container { max-width: 992px }
143- }
144- @media (min-width: 1200px) {
145- .container { max-width: 1200px }
146+ @layer components {
147+ @variants {
148+ .container {
149+ width: 100%;
150+ margin-right: auto;
151+ margin-left: auto
152+ }
153+ @media (min-width: 576px) {
154+ .container { max-width: 576px }
155+ }
156+ @media (min-width: 768px) {
157+ .container { max-width: 768px }
158+ }
159+ @media (min-width: 992px) {
160+ .container { max-width: 992px }
161+ }
162+ @media (min-width: 1200px) {
163+ .container { max-width: 1200px }
164+ }
165+ }
146166 }
147167 ` )
148168} )
@@ -160,22 +180,26 @@ test.only('horizontal padding can be included by default', () => {
160180 )
161181
162182 expect ( css ( components ) ) . toMatchCss ( `
163- .container {
164- width: 100%;
165- padding-right: 2rem;
166- padding-left: 2rem
167- }
168- @media (min-width: 576px) {
169- .container { max-width: 576px }
170- }
171- @media (min-width: 768px) {
172- .container { max-width: 768px }
173- }
174- @media (min-width: 992px) {
175- .container { max-width: 992px }
176- }
177- @media (min-width: 1200px) {
178- .container { max-width: 1200px }
183+ @layer components {
184+ @variants {
185+ .container {
186+ width: 100%;
187+ padding-right: 2rem;
188+ padding-left: 2rem
189+ }
190+ @media (min-width: 576px) {
191+ .container { max-width: 576px }
192+ }
193+ @media (min-width: 768px) {
194+ .container { max-width: 768px }
195+ }
196+ @media (min-width: 992px) {
197+ .container { max-width: 992px }
198+ }
199+ @media (min-width: 1200px) {
200+ .container { max-width: 1200px }
201+ }
202+ }
179203 }
180204 ` )
181205} )
@@ -198,33 +222,37 @@ test.only('responsive horizontal padding can be included by default', () => {
198222 )
199223
200224 expect ( css ( components ) ) . toMatchCss ( `
201- .container {
202- width: 100%;
203- padding-right: 1rem;
204- padding-left: 1rem
205- }
206- @media (min-width: 576px) {
207- .container {
208- max-width: 576px;
209- padding-right: 2rem;
210- padding-left: 2rem
211- }
212- }
213- @media (min-width: 768px) {
214- .container { max-width: 768px }
215- }
216- @media (min-width: 992px) {
217- .container {
218- max-width: 992px;
219- padding-right: 4rem;
220- padding-left: 4rem
221- }
222- }
223- @media (min-width: 1200px) {
224- .container {
225- max-width: 1200px;
226- padding-right: 5rem;
227- padding-left: 5rem
225+ @layer components {
226+ @variants {
227+ .container {
228+ width: 100%;
229+ padding-right: 1rem;
230+ padding-left: 1rem
231+ }
232+ @media (min-width: 576px) {
233+ .container {
234+ max-width: 576px;
235+ padding-right: 2rem;
236+ padding-left: 2rem
237+ }
238+ }
239+ @media (min-width: 768px) {
240+ .container { max-width: 768px }
241+ }
242+ @media (min-width: 992px) {
243+ .container {
244+ max-width: 992px;
245+ padding-right: 4rem;
246+ padding-left: 4rem
247+ }
248+ }
249+ @media (min-width: 1200px) {
250+ .container {
251+ max-width: 1200px;
252+ padding-right: 5rem;
253+ padding-left: 5rem
254+ }
255+ }
228256 }
229257 }
230258 ` )
@@ -245,18 +273,22 @@ test.only('setting all options at once', () => {
245273 )
246274
247275 expect ( css ( components ) ) . toMatchCss ( `
248- .container {
249- width: 100%;
250- margin-right: auto;
251- margin-left: auto;
252- padding-right: 2rem;
253- padding-left: 2rem
254- }
255- @media (min-width: 400px) {
256- .container { max-width: 400px }
257- }
258- @media (min-width: 500px) {
259- .container { max-width: 500px }
276+ @layer components {
277+ @variants {
278+ .container {
279+ width: 100%;
280+ margin-right: auto;
281+ margin-left: auto;
282+ padding-right: 2rem;
283+ padding-left: 2rem
284+ }
285+ @media (min-width: 400px) {
286+ .container { max-width: 400px }
287+ }
288+ @media (min-width: 500px) {
289+ .container { max-width: 500px }
290+ }
291+ }
260292 }
261293 ` )
262294} )
0 commit comments