aboutsummaryrefslogtreecommitdiffstats
path: root/test/bem/_modifier.scss
diff options
context:
space:
mode:
authorVolpeon <git@volpeon.ink>2025-08-13 12:01:46 +0200
committerVolpeon <git@volpeon.ink>2025-08-13 12:01:46 +0200
commitf0f84513f8efe533b6ee670a6f1a0c074387b2ec (patch)
tree845bc4bacf1bd99acb0dfcc7e4545a36b544d2f8 /test/bem/_modifier.scss
parentMore fix (diff)
downloadiro-sass-f0f84513f8efe533b6ee670a6f1a0c074387b2ec.tar.gz
iro-sass-f0f84513f8efe533b6ee670a6f1a0c074387b2ec.tar.bz2
iro-sass-f0f84513f8efe533b6ee670a6f1a0c074387b2ec.zip
Make use of SASS modulesHEADmaster
Diffstat (limited to 'test/bem/_modifier.scss')
-rw-r--r--test/bem/_modifier.scss1066
1 files changed, 533 insertions, 533 deletions
diff --git a/test/bem/_modifier.scss b/test/bem/_modifier.scss
index 934efa3..419aa91 100644
--- a/test/bem/_modifier.scss
+++ b/test/bem/_modifier.scss
@@ -23,633 +23,633 @@
23// 23//
24 24
25@include it('modifier') { 25@include it('modifier') {
26 @include assert('block modifier') { /// 1 /// 26 @include assert('block modifier') { /// 1 ///
27 @include output { 27 @include output {
28 @include bem.block('something') { 28 @include bem.block('something') {
29 @include bem.modifier('mod') { 29 @include bem.modifier('mod') {
30 font-size: 1.5em; 30 font-size: 1.5em;
31 31
32 @include bem.modifier('submod') { 32 @include bem.modifier('submod') {
33 font-size: 1.75em; 33 font-size: 1.75em;
34 } 34 }
35 } 35 }
36 } 36 }
37 } 37 }
38 38
39 @include expect { 39 @include expect {
40 .something--mod { 40 .something--mod {
41 font-size: 1.5em; 41 font-size: 1.5em;
42 } 42 }
43 43
44 .something--mod.something--submod { 44 .something--mod.something--submod {
45 font-size: 1.75em; 45 font-size: 1.75em;
46 } 46 }
47 } 47 }
48 } 48 }
49 49
50 @include assert('block modifier, in at-theme') { /// 2 /// 50 @include assert('block modifier, in at-theme') { /// 2 ///
51 @include output(false) { 51 @include output(false) {
52 @include bem.block('something') { 52 @include bem.block('something') {
53 @include bem.at-theme('dark') { 53 @include bem.at-theme('dark') {
54 @include bem.modifier('mod') { 54 @include bem.modifier('mod') {
55 font-size: 1.5em; 55 font-size: 1.5em;
56 56
57 @include bem.modifier('submod') { 57 @include bem.modifier('submod') {
58 font-size: 1.75em; 58 font-size: 1.75em;
59 } 59 }
60 } 60 }
61 } 61 }
62 } 62 }
63 } 63 }
64 64
65 @include expect(false) { 65 @include expect(false) {
66 .t-dark .something--mod, 66 .t-dark .something--mod,
67 [class*=' t-'] .t-dark .something--mod, 67 [class*=' t-'] .t-dark .something--mod,
68 [class^='t-'] .t-dark .something--mod { 68 [class^='t-'] .t-dark .something--mod {
69 font-size: 1.5em; 69 font-size: 1.5em;
70 } 70 }
71 71
72 .t-dark .something--mod.something--submod, 72 .t-dark .something--mod.something--submod,
73 [class*=' t-'] .t-dark .something--mod.something--submod, 73 [class*=' t-'] .t-dark .something--mod.something--submod,
74 [class^='t-'] .t-dark .something--mod.something--submod { 74 [class^='t-'] .t-dark .something--mod.something--submod {
75 font-size: 1.75em; 75 font-size: 1.75em;
76 } 76 }
77 } 77 }
78 } 78 }
79 79
80 @include assert('element modifier, single element') { /// 3 /// 80 @include assert('element modifier, single element') { /// 3 ///
81 @include output { 81 @include output {
82 @include bem.block('something') { 82 @include bem.block('something') {
83 @include bem.elem('child') { 83 @include bem.elem('child') {
84 @include bem.modifier('mod') { 84 @include bem.modifier('mod') {
85 font-size: 2.5em; 85 font-size: 2.5em;
86 86
87 @include bem.modifier('submod') { 87 @include bem.modifier('submod') {
88 font-size: 2.75em; 88 font-size: 2.75em;
89 } 89 }
90 } 90 }
91 } 91 }
92 } 92 }
93 } 93 }
94 94
95 @include expect { 95 @include expect {
96 .something__child--mod { 96 .something__child--mod {
97 font-size: 2.5em; 97 font-size: 2.5em;
98 } 98 }
99 99
100 .something__child--mod.something__child--submod { 100 .something__child--mod.something__child--submod {
101 font-size: 2.75em; 101 font-size: 2.75em;
102 } 102 }
103 } 103 }
104 } 104 }
105 105
106 @include assert('element modifier, multiple elements') { /// 4 /// 106 @include assert('element modifier, multiple elements') { /// 4 ///
107 @include output { 107 @include output {
108 @include bem.block('something') { 108 @include bem.block('something') {
109 @include bem.elem('child1', 'child2') { 109 @include bem.elem('child1', 'child2') {
110 @include bem.modifier('mod') { 110 @include bem.modifier('mod') {
111 font-size: 2.5em; 111 font-size: 2.5em;
112 112
113 @include bem.modifier('submod') { 113 @include bem.modifier('submod') {
114 font-size: 2.75em; 114 font-size: 2.75em;
115 } 115 }
116 } 116 }
117 } 117 }
118 } 118 }
119 } 119 }
120 120
121 @include expect { 121 @include expect {
122 .something__child1--mod, 122 .something__child1--mod,
123 .something__child2--mod { 123 .something__child2--mod {
124 font-size: 2.5em; 124 font-size: 2.5em;
125 } 125 }
126 126
127 .something__child1--mod.something__child1--submod, 127 .something__child1--mod.something__child1--submod,
128 .something__child2--mod.something__child2--submod { 128 .something__child2--mod.something__child2--submod {
129 font-size: 2.75em; 129 font-size: 2.75em;
130 } 130 }
131 } 131 }
132 } 132 }
133 133
134 @include assert('element modifier, single related element') { /// 5 /// 134 @include assert('element modifier, single related element') { /// 5 ///
135 @include output { 135 @include output {
136 @include bem.block('something') { 136 @include bem.block('something') {
137 @include bem.elem('child1') { 137 @include bem.elem('child1') {
138 @include bem.next-elem('child2') { 138 @include bem.next-elem('child2') {
139 @include bem.modifier('mod') { 139 @include bem.modifier('mod') {
140 font-size: 2.5em; 140 font-size: 2.5em;
141 141
142 @include bem.modifier('submod') { 142 @include bem.modifier('submod') {
143 font-size: 2.75em; 143 font-size: 2.75em;
144 } 144 }
145 } 145 }
146 } 146 }
147 } 147 }
148 } 148 }
149 } 149 }
150 150
151 @include expect { 151 @include expect {
152 .something__child1 + .something__child2--mod { 152 .something__child1 + .something__child2--mod {
153 font-size: 2.5em; 153 font-size: 2.5em;
154 } 154 }
155 155
156 .something__child1 + .something__child2--mod.something__child2--submod { 156 .something__child1 + .something__child2--mod.something__child2--submod {
157 font-size: 2.75em; 157 font-size: 2.75em;
158 } 158 }
159 } 159 }
160 } 160 }
161 161
162 @include assert('element modifier, multiple related elements') { /// 6 /// 162 @include assert('element modifier, multiple related elements') { /// 6 ///
163 @include output { 163 @include output {
164 @include bem.block('something') { 164 @include bem.block('something') {
165 @include bem.elem('child1') { 165 @include bem.elem('child1') {
166 @include bem.next-elem('child2', 'child3') { 166 @include bem.next-elem('child2', 'child3') {
167 @include bem.modifier('mod') { 167 @include bem.modifier('mod') {
168 font-size: 2.5em; 168 font-size: 2.5em;
169 169
170 @include bem.modifier('submod') { 170 @include bem.modifier('submod') {
171 font-size: 2.75em; 171 font-size: 2.75em;
172 } 172 }
173 } 173 }
174 } 174 }
175 } 175 }
176 } 176 }
177 } 177 }
178 178
179 @include expect { 179 @include expect {
180 .something__child1 + .something__child2--mod, 180 .something__child1 + .something__child2--mod,
181 .something__child1 + .something__child3--mod { 181 .something__child1 + .something__child3--mod {
182 font-size: 2.5em; 182 font-size: 2.5em;
183 } 183 }
184 184
185 .something__child1 + .something__child2--mod.something__child2--submod, 185 .something__child1 + .something__child2--mod.something__child2--submod,
186 .something__child1 + .something__child3--mod.something__child3--submod { 186 .something__child1 + .something__child3--mod.something__child3--submod {
187 font-size: 2.75em; 187 font-size: 2.75em;
188 } 188 }
189 } 189 }
190 } 190 }
191 191
192 @include assert('element modifier, single element, manual selector before') { /// 7 /// 192 @include assert('element modifier, single element, manual selector before') { /// 7 ///
193 @include output(false) { 193 @include output(false) {
194 @include bem.block('something') { 194 @include bem.block('something') {
195 &:hover { 195 &:hover {
196 @include bem.elem('child1') { 196 @include bem.elem('child1') {
197 @include bem.modifier('mod') { 197 @include bem.modifier('mod') {
198 font-size: 2.5em; 198 font-size: 2.5em;
199 199
200 @include bem.modifier('submod') { 200 @include bem.modifier('submod') {
201 font-size: 2.75em; 201 font-size: 2.75em;
202 } 202 }
203 } 203 }
204 } 204 }
205 } 205 }
206 206
207 .test & { 207 .test & {
208 @include bem.elem('child2') { 208 @include bem.elem('child2') {
209 @include bem.modifier('mod') { 209 @include bem.modifier('mod') {
210 font-size: 2.5em; 210 font-size: 2.5em;
211 211
212 @include bem.modifier('submod') { 212 @include bem.modifier('submod') {
213 font-size: 2.75em; 213 font-size: 2.75em;
214 } 214 }
215 } 215 }
216 } 216 }
217 } 217 }
218 } 218 }
219 } 219 }
220 220
221 @include expect(false) { 221 @include expect(false) {
222 .something:hover .something__child1--mod { 222 .something:hover .something__child1--mod {
223 font-size: 2.5em; 223 font-size: 2.5em;
224 } 224 }
225 225
226 .something:hover .something__child1--mod.something__child1--submod { 226 .something:hover .something__child1--mod.something__child1--submod {
227 font-size: 2.75em; 227 font-size: 2.75em;
228 } 228 }
229 229
230 .test .something__child2--mod { 230 .test .something__child2--mod {
231 font-size: 2.5em; 231 font-size: 2.5em;
232 } 232 }
233 233
234 .test .something__child2--mod.something__child2--submod { 234 .test .something__child2--mod.something__child2--submod {
235 font-size: 2.75em; 235 font-size: 2.75em;
236 } 236 }
237 } 237 }
238 } 238 }
239 239
240 @include assert('element modifier, multiple elements, manual selector before') { /// 8 /// 240 @include assert('element modifier, multiple elements, manual selector before') { /// 8 ///
241 @include output(false) { 241 @include output(false) {
242 @include bem.block('something') { 242 @include bem.block('something') {
243 &:hover { 243 &:hover {
244 @include bem.elem('child1', 'child2') { 244 @include bem.elem('child1', 'child2') {
245 @include bem.modifier('mod') { 245 @include bem.modifier('mod') {
246 font-size: 2.5em; 246 font-size: 2.5em;
247 247
248 @include bem.modifier('submod') { 248 @include bem.modifier('submod') {
249 font-size: 2.75em; 249 font-size: 2.75em;
250 } 250 }
251 } 251 }
252 } 252 }
253 } 253 }
254 254
255 .test & { 255 .test & {
256 @include bem.elem('child3', 'child4') { 256 @include bem.elem('child3', 'child4') {
257 @include bem.modifier('mod') { 257 @include bem.modifier('mod') {
258 font-size: 2.5em; 258 font-size: 2.5em;
259 259
260 @include bem.modifier('submod') { 260 @include bem.modifier('submod') {
261 font-size: 2.75em; 261 font-size: 2.75em;
262 } 262 }
263 } 263 }
264 } 264 }
265 } 265 }
266 } 266 }
267 } 267 }
268 268
269 @include expect(false) { 269 @include expect(false) {
270 .something:hover .something__child1--mod, 270 .something:hover .something__child1--mod,
271 .something:hover .something__child2--mod { 271 .something:hover .something__child2--mod {
272 font-size: 2.5em; 272 font-size: 2.5em;
273 } 273 }
274 274
275 .something:hover .something__child1--mod.something__child1--submod, 275 .something:hover .something__child1--mod.something__child1--submod,
276 .something:hover .something__child2--mod.something__child2--submod { 276 .something:hover .something__child2--mod.something__child2--submod {
277 font-size: 2.75em; 277 font-size: 2.75em;
278 } 278 }
279 279
280 .test .something__child3--mod, 280 .test .something__child3--mod,
281 .test .something__child4--mod { 281 .test .something__child4--mod {
282 font-size: 2.5em; 282 font-size: 2.5em;
283 } 283 }
284 284
285 .test .something__child3--mod.something__child3--submod, 285 .test .something__child3--mod.something__child3--submod,
286 .test .something__child4--mod.something__child4--submod { 286 .test .something__child4--mod.something__child4--submod {
287 font-size: 2.75em; 287 font-size: 2.75em;
288 } 288 }
289 } 289 }
290 } 290 }
291 291
292 @include assert('element modifier, single related element, manual selector before') { /// 9 /// 292 @include assert('element modifier, single related element, manual selector before') { /// 9 ///
293 @include output(false) { 293 @include output(false) {
294 @include bem.block('something') { 294 @include bem.block('something') {
295 &:hover { 295 &:hover {
296 @include bem.elem('child1') { 296 @include bem.elem('child1') {
297 @include bem.next-elem('child2') { 297 @include bem.next-elem('child2') {
298 @include bem.modifier('mod1') { 298 @include bem.modifier('mod1') {
299 font-size: 2.5em; 299 font-size: 2.5em;
300 300
301 @include bem.modifier('submod1') { 301 @include bem.modifier('submod1') {
302 font-size: 2.75em; 302 font-size: 2.75em;
303 } 303 }
304 } 304 }
305 } 305 }
306 } 306 }
307 } 307 }
308 308
309 .test & { 309 .test & {
310 @include bem.elem('child3') { 310 @include bem.elem('child3') {
311 @include bem.next-elem('child4') { 311 @include bem.next-elem('child4') {
312 @include bem.modifier('mod1') { 312 @include bem.modifier('mod1') {
313 font-size: 2.5em; 313 font-size: 2.5em;
314 314
315 @include bem.modifier('submod1') { 315 @include bem.modifier('submod1') {
316 font-size: 2.75em; 316 font-size: 2.75em;
317 } 317 }
318 } 318 }
319 } 319 }
320 } 320 }
321 } 321 }
322 322
323 @include bem.elem('child5') { 323 @include bem.elem('child5') {
324 &:hover { 324 &:hover {
325 @include bem.next-elem('child6') { 325 @include bem.next-elem('child6') {
326 @include bem.modifier('mod2') { 326 @include bem.modifier('mod2') {
327 font-size: 2.5em; 327 font-size: 2.5em;
328 328
329 @include bem.modifier('submod2') { 329 @include bem.modifier('submod2') {
330 font-size: 2.75em; 330 font-size: 2.75em;
331 } 331 }
332 } 332 }
333 } 333 }
334 } 334 }
335 335
336 .test & { 336 .test & {
337 @include bem.next-elem('child7') { 337 @include bem.next-elem('child7') {
338 @include bem.modifier('mod2') { 338 @include bem.modifier('mod2') {
339 font-size: 2.5em; 339 font-size: 2.5em;
340 340
341 @include bem.modifier('submod2') { 341 @include bem.modifier('submod2') {
342 font-size: 2.75em; 342 font-size: 2.75em;
343 } 343 }
344 } 344 }
345 } 345 }
346 } 346 }
347 } 347 }
348 } 348 }
349 } 349 }
350 350
351 @include expect(false) { 351 @include expect(false) {
352 .something:hover .something__child1 + .something__child2--mod1 { 352 .something:hover .something__child1 + .something__child2--mod1 {
353 font-size: 2.5em; 353 font-size: 2.5em;
354 } 354 }
355 355
356 .something:hover .something__child1 + .something__child2--mod1.something__child2--submod1 { 356 .something:hover .something__child1 + .something__child2--mod1.something__child2--submod1 {
357 font-size: 2.75em; 357 font-size: 2.75em;
358 } 358 }
359 359
360 .test .something__child3 + .something__child4--mod1 { 360 .test .something__child3 + .something__child4--mod1 {
361 font-size: 2.5em; 361 font-size: 2.5em;
362 } 362 }
363 363
364 .test .something__child3 + .something__child4--mod1.something__child4--submod1 { 364 .test .something__child3 + .something__child4--mod1.something__child4--submod1 {
365 font-size: 2.75em; 365 font-size: 2.75em;
366 } 366 }
367 367
368 .something__child5:hover + .something__child6--mod2 { 368 .something__child5:hover + .something__child6--mod2 {
369 font-size: 2.5em; 369 font-size: 2.5em;
370 } 370 }
371 371
372 .something__child5:hover + .something__child6--mod2.something__child6--submod2 { 372 .something__child5:hover + .something__child6--mod2.something__child6--submod2 {
373 font-size: 2.75em; 373 font-size: 2.75em;
374 } 374 }
375 375
376 .test .something__child5 + .something__child7--mod2 { 376 .test .something__child5 + .something__child7--mod2 {
377 font-size: 2.5em; 377 font-size: 2.5em;
378 } 378 }
379 379
380 .test .something__child5 + .something__child7--mod2.something__child7--submod2 { 380 .test .something__child5 + .something__child7--mod2.something__child7--submod2 {
381 font-size: 2.75em; 381 font-size: 2.75em;
382 } 382 }
383 } 383 }
384 } 384 }
385 385
386 @include assert('element modifier, multiple related elements, manual selector before') { /// 10 /// 386 @include assert('element modifier, multiple related elements, manual selector before') { /// 10 ///
387 @include output(false) { 387 @include output(false) {
388 @include bem.block('something') { 388 @include bem.block('something') {
389 &:hover { 389 &:hover {
390 @include bem.elem('child1') { 390 @include bem.elem('child1') {
391 @include bem.next-elem('child2', 'child3') { 391 @include bem.next-elem('child2', 'child3') {
392 @include bem.modifier('mod1') { 392 @include bem.modifier('mod1') {
393 font-size: 2.5em; 393 font-size: 2.5em;
394 394
395 @include bem.modifier('submod1') { 395 @include bem.modifier('submod1') {
396 font-size: 2.75em; 396 font-size: 2.75em;
397 } 397 }
398 } 398 }
399 } 399 }
400 } 400 }
401 } 401 }
402 402
403 .test & { 403 .test & {
404 @include bem.elem('child4') { 404 @include bem.elem('child4') {
405 @include bem.next-elem('child5', 'child6') { 405 @include bem.next-elem('child5', 'child6') {
406 @include bem.modifier('mod1') { 406 @include bem.modifier('mod1') {
407 font-size: 2.5em; 407 font-size: 2.5em;
408 408
409 @include bem.modifier('submod1') { 409 @include bem.modifier('submod1') {
410 font-size: 2.75em; 410 font-size: 2.75em;
411 } 411 }
412 } 412 }
413 } 413 }
414 } 414 }
415 } 415 }
416 416
417 @include bem.elem('child7') { 417 @include bem.elem('child7') {
418 &:hover { 418 &:hover {
419 @include bem.next-elem('child8', 'child9') { 419 @include bem.next-elem('child8', 'child9') {
420 @include bem.modifier('mod2') { 420 @include bem.modifier('mod2') {
421 font-size: 2.5em; 421 font-size: 2.5em;
422 422
423 @include bem.modifier('submod2') { 423 @include bem.modifier('submod2') {
424 font-size: 2.75em; 424 font-size: 2.75em;
425 } 425 }
426 } 426 }
427 } 427 }
428 } 428 }
429 429
430 .test & { 430 .test & {
431 @include bem.next-elem('child10', 'child11') { 431 @include bem.next-elem('child10', 'child11') {
432 @include bem.modifier('mod2') { 432 @include bem.modifier('mod2') {
433 font-size: 2.5em; 433 font-size: 2.5em;
434 434
435 @include bem.modifier('submod2') { 435 @include bem.modifier('submod2') {
436 font-size: 2.75em; 436 font-size: 2.75em;
437 } 437 }
438 } 438 }
439 } 439 }
440 } 440 }
441 } 441 }
442 } 442 }
443 } 443 }
444 444
445 @include expect(false) { 445 @include expect(false) {
446 .something:hover .something__child1 + .something__child2--mod1, 446 .something:hover .something__child1 + .something__child2--mod1,
447 .something:hover .something__child1 + .something__child3--mod1 { 447 .something:hover .something__child1 + .something__child3--mod1 {
448 font-size: 2.5em; 448 font-size: 2.5em;
449 } 449 }
450 450
451 .something:hover .something__child1 + .something__child2--mod1.something__child2--submod1, 451 .something:hover .something__child1 + .something__child2--mod1.something__child2--submod1,
452 .something:hover .something__child1 + .something__child3--mod1.something__child3--submod1 { 452 .something:hover .something__child1 + .something__child3--mod1.something__child3--submod1 {
453 font-size: 2.75em; 453 font-size: 2.75em;
454 } 454 }
455 455
456 .test .something__child4 + .something__child5--mod1, 456 .test .something__child4 + .something__child5--mod1,
457 .test .something__child4 + .something__child6--mod1 { 457 .test .something__child4 + .something__child6--mod1 {
458 font-size: 2.5em; 458 font-size: 2.5em;
459 } 459 }
460 460
461 .test .something__child4 + .something__child5--mod1.something__child5--submod1, 461 .test .something__child4 + .something__child5--mod1.something__child5--submod1,
462 .test .something__child4 + .something__child6--mod1.something__child6--submod1 { 462 .test .something__child4 + .something__child6--mod1.something__child6--submod1 {
463 font-size: 2.75em; 463 font-size: 2.75em;
464 } 464 }
465 465
466 .something__child7:hover + .something__child8--mod2, 466 .something__child7:hover + .something__child8--mod2,
467 .something__child7:hover + .something__child9--mod2 { 467 .something__child7:hover + .something__child9--mod2 {
468 font-size: 2.5em; 468 font-size: 2.5em;
469 } 469 }
470 470
471 .something__child7:hover + .something__child8--mod2.something__child8--submod2, 471 .something__child7:hover + .something__child8--mod2.something__child8--submod2,
472 .something__child7:hover + .something__child9--mod2.something__child9--submod2 { 472 .something__child7:hover + .something__child9--mod2.something__child9--submod2 {
473 font-size: 2.75em; 473 font-size: 2.75em;
474 } 474 }
475 475
476 .test .something__child7 + .something__child10--mod2, 476 .test .something__child7 + .something__child10--mod2,
477 .test .something__child7 + .something__child11--mod2 { 477 .test .something__child7 + .something__child11--mod2 {
478 font-size: 2.5em; 478 font-size: 2.5em;
479 } 479 }
480 480
481 .test .something__child7 + .something__child10--mod2.something__child10--submod2, 481 .test .something__child7 + .something__child10--mod2.something__child10--submod2,
482 .test .something__child7 + .something__child11--mod2.something__child11--submod2 { 482 .test .something__child7 + .something__child11--mod2.something__child11--submod2 {
483 font-size: 2.75em; 483 font-size: 2.75em;
484 } 484 }
485 } 485 }
486 } 486 }
487 487
488 // @include assert('element modifier, in at-theme') { /// 11 /// 488 // @include assert('element modifier, in at-theme') { /// 11 ///
489 // @include output(false) { 489 // @include output(false) {
490 // @include bem.block('something') { 490 // @include bem.block('something') {
491 // @include bem.at-theme('dark') { 491 // @include bem.at-theme('dark') {
492 // @include bem.elem('child') { 492 // @include bem.elem('child') {
493 // @include bem.modifier('mod') { 493 // @include bem.modifier('mod') {
494 // font-size: 2.5em; 494 // font-size: 2.5em;
495 // 495 //
496 // @include bem.modifier('submod') { 496 // @include bem.modifier('submod') {
497 // font-size: 2.75em; 497 // font-size: 2.75em;
498 // } 498 // }
499 // } 499 // }
500 // } 500 // }
501 // } 501 // }
502 // } 502 // }
503 // } 503 // }
504 // 504 //
505 // @include expect(false) { 505 // @include expect(false) {
506 // .t-dark .something__child--mod, 506 // .t-dark .something__child--mod,
507 // [class*=' t-'] .t-dark .something__child--mod, 507 // [class*=' t-'] .t-dark .something__child--mod,
508 // [class^='t-'] .t-dark .something__child--mod { 508 // [class^='t-'] .t-dark .something__child--mod {
509 // font-size: 2.5em; 509 // font-size: 2.5em;
510 // } 510 // }
511 // 511 //
512 // .t-dark .something__child--mod.something__child--submod, 512 // .t-dark .something__child--mod.something__child--submod,
513 // [class*=' t-'] .t-dark .something__child--mod.something__child--submod, 513 // [class*=' t-'] .t-dark .something__child--mod.something__child--submod,
514 // [class^='t-'] .t-dark .something__child--mod.something__child--submod { 514 // [class^='t-'] .t-dark .something__child--mod.something__child--submod {
515 // font-size: 2.75em; 515 // font-size: 2.75em;
516 // } 516 // }
517 // } 517 // }
518 // } 518 // }
519 519
520 @include assert('nested block modifiers, extending') { /// 12 /// 520 @include assert('nested block modifiers, extending') { /// 12 ///
521 @include output { 521 @include output {
522 @include bem.block('something') { 522 @include bem.block('something') {
523 @include bem.modifier('mod') { 523 @include bem.modifier('mod') {
524 font-size: 1.5em; 524 font-size: 1.5em;
525 525
526 @include bem.modifier('submod' true) { 526 @include bem.modifier('submod' true) {
527 font-size: 1.75em; 527 font-size: 1.75em;
528 } 528 }
529 } 529 }
530 } 530 }
531 } 531 }
532 532
533 @include expect { 533 @include expect {
534 .something--mod { 534 .something--mod {
535 font-size: 1.5em; 535 font-size: 1.5em;
536 } 536 }
537 537
538 .something--mod--submod { 538 .something--mod--submod {
539 font-size: 1.75em; 539 font-size: 1.75em;
540 } 540 }
541 } 541 }
542 } 542 }
543 543
544 @include assert('nested element modifiers, extending') { /// 13 /// 544 @include assert('nested element modifiers, extending') { /// 13 ///
545 @include output { 545 @include output {
546 @include bem.block('something') { 546 @include bem.block('something') {
547 @include bem.elem('child') { 547 @include bem.elem('child') {
548 @include bem.modifier('mod') { 548 @include bem.modifier('mod') {
549 font-size: 2.5em; 549 font-size: 2.5em;
550 550
551 @include bem.modifier('submod' true) { 551 @include bem.modifier('submod' true) {
552 font-size: 2.75em; 552 font-size: 2.75em;
553 } 553 }
554 } 554 }
555 } 555 }
556 } 556 }
557 } 557 }
558 558
559 @include expect { 559 @include expect {
560 .something__child--mod { 560 .something__child--mod {
561 font-size: 2.5em; 561 font-size: 2.5em;
562 } 562 }
563 563
564 .something__child--mod--submod { 564 .something__child--mod--submod {
565 font-size: 2.75em; 565 font-size: 2.75em;
566 } 566 }
567 } 567 }
568 } 568 }
569 569
570 @include assert('block and element modifiers, single element') { /// 14 /// 570 @include assert('block and element modifiers, single element') { /// 14 ///
571 @include output { 571 @include output {
572 @include bem.block('something') { 572 @include bem.block('something') {
573 @include bem.modifier('mod1') { 573 @include bem.modifier('mod1') {
574 font-size: 1.5em; 574 font-size: 1.5em;
575 575
576 @include bem.modifier('submod1') { 576 @include bem.modifier('submod1') {
577 font-size: 1.75em; 577 font-size: 1.75em;
578 } 578 }
579 579
580 @include bem.elem('child') { 580 @include bem.elem('child') {
581 @include bem.modifier('mod2') { 581 @include bem.modifier('mod2') {
582 font-size: 2.5em; 582 font-size: 2.5em;
583 583
584 @include bem.modifier('submod2') { 584 @include bem.modifier('submod2') {
585 font-size: 2.75em; 585 font-size: 2.75em;
586 } 586 }
587 } 587 }
588 } 588 }
589 } 589 }
590 } 590 }
591 } 591 }
592 592
593 @include expect { 593 @include expect {
594 .something--mod1 { 594 .something--mod1 {
595 font-size: 1.5em; 595 font-size: 1.5em;
596 } 596 }
597 597
598 .something--mod1.something--submod1 { 598 .something--mod1.something--submod1 {
599 font-size: 1.75em; 599 font-size: 1.75em;
600 } 600 }
601 601
602 .something--mod1 .something__child--mod2 { 602 .something--mod1 .something__child--mod2 {
603 font-size: 2.5em; 603 font-size: 2.5em;
604 } 604 }
605 605
606 .something--mod1 .something__child--mod2.something__child--submod2 { 606 .something--mod1 .something__child--mod2.something__child--submod2 {
607 font-size: 2.75em; 607 font-size: 2.75em;
608 } 608 }
609 } 609 }
610 } 610 }
611 611
612 @include assert('block and element modifiers, multiple elements') { /// 15 /// 612 @include assert('block and element modifiers, multiple elements') { /// 15 ///
613 @include output { 613 @include output {
614 @include bem.block('something') { 614 @include bem.block('something') {
615 @include bem.modifier('mod1') { 615 @include bem.modifier('mod1') {
616 font-size: 1.5em; 616 font-size: 1.5em;
617 617
618 @include bem.modifier('submod1') { 618 @include bem.modifier('submod1') {
619 font-size: 1.75em; 619 font-size: 1.75em;
620 } 620 }
621 621
622 @include bem.elem('child1', 'child2') { 622 @include bem.elem('child1', 'child2') {
623 @include bem.modifier('mod2') { 623 @include bem.modifier('mod2') {
624 font-size: 2.5em; 624 font-size: 2.5em;
625 625
626 @include bem.modifier('submod2') { 626 @include bem.modifier('submod2') {
627 font-size: 2.75em; 627 font-size: 2.75em;
628 } 628 }
629 } 629 }
630 } 630 }
631 } 631 }
632 } 632 }
633 } 633 }
634 634
635 @include expect { 635 @include expect {
636 .something--mod1 { 636 .something--mod1 {
637 font-size: 1.5em; 637 font-size: 1.5em;
638 } 638 }
639 639
640 .something--mod1.something--submod1 { 640 .something--mod1.something--submod1 {
641 font-size: 1.75em; 641 font-size: 1.75em;
642 } 642 }
643 643
644 .something--mod1 .something__child1--mod2, 644 .something--mod1 .something__child1--mod2,
645 .something--mod1 .something__child2--mod2 { 645 .something--mod1 .something__child2--mod2 {
646 font-size: 2.5em; 646 font-size: 2.5em;
647 } 647 }
648 648
649 .something--mod1 .something__child1--mod2.something__child1--submod2, 649 .something--mod1 .something__child1--mod2.something__child1--submod2,
650 .something--mod1 .something__child2--mod2.something__child2--submod2 { 650 .something--mod1 .something__child2--mod2.something__child2--submod2 {
651 font-size: 2.75em; 651 font-size: 2.75em;
652 } 652 }
653 } 653 }
654 } 654 }
655} 655}