aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorVolpeon <git@volpeon.ink>2022-02-05 07:52:13 +0100
committerVolpeon <git@volpeon.ink>2022-02-05 07:52:13 +0100
commitdd5f3c463fab336d694f426dcad11a1783590fc9 (patch)
treefaebf738a9556eaa393371852ed86550d4adf66a /test
parentFix errors from transition from node-sass to sass (diff)
downloadiro-sass-dd5f3c463fab336d694f426dcad11a1783590fc9.tar.gz
iro-sass-dd5f3c463fab336d694f426dcad11a1783590fc9.tar.bz2
iro-sass-dd5f3c463fab336d694f426dcad11a1783590fc9.zip
Ported from import syntax to modules
Diffstat (limited to 'test')
-rw-r--r--test/_bem.scss24
-rw-r--r--test/_contexts.scss79
-rw-r--r--test/_functions.scss83
-rw-r--r--test/_gradients.scss114
-rw-r--r--test/_harmony.scss79
-rw-r--r--test/_props.scss124
-rw-r--r--test/_responsive.scss16
-rw-r--r--test/bem/_at-theme.scss (renamed from test/bem/_iro-bem-at-theme.scss)15
-rw-r--r--test/bem/_block.scss (renamed from test/bem/_iro-bem-block.scss)21
-rw-r--r--test/bem/_composed-of.scss (renamed from test/bem/_iro-bem-composed-of.scss)43
-rw-r--r--test/bem/_element.scss (renamed from test/bem/_iro-bem-element.scss)123
-rw-r--r--test/bem/_examples.scss43
-rw-r--r--test/bem/_modifier.scss (renamed from test/bem/_iro-bem-modifier.scss)249
-rw-r--r--test/bem/_multi.scss (renamed from test/bem/_iro-bem-multi.scss)127
-rw-r--r--test/bem/_next-twin-element.scss (renamed from test/bem/_iro-bem-next-twin-element.scss)49
-rw-r--r--test/bem/_related-element.scss (renamed from test/bem/_iro-bem-related-element.scss)125
-rw-r--r--test/bem/_state.scss (renamed from test/bem/_iro-bem-state.scss)49
-rw-r--r--test/bem/_suffix.scss (renamed from test/bem/_iro-bem-suffix.scss)33
-rw-r--r--test/test.scss7
19 files changed, 728 insertions, 675 deletions
diff --git a/test/_bem.scss b/test/_bem.scss
index 30ed131..b7bd6b4 100644
--- a/test/_bem.scss
+++ b/test/_bem.scss
@@ -1,19 +1,21 @@
1@include describe('BEM') { 1@use 'true' as *;
2
3@include describe('bem') {
2 // 4 //
3 // The following unit tests only test the BEM mixins. 5 // The following unit tests only test the BEM mixins.
4 // Since they are wrappers for the BEM functions, the latter are 6 // Since they are wrappers for the BEM functions, the latter are
5 // automatically covered. 7 // automatically covered.
6 // 8 //
7 9
8 @import 'bem/iro-bem-block'; 10 @import 'bem/block';
9 @import 'bem/iro-bem-composed-of'; 11 @import 'bem/composed-of';
10 @import 'bem/iro-bem-at-theme'; 12 @import 'bem/at-theme';
11 @import 'bem/iro-bem-element'; 13 @import 'bem/element';
12 @import 'bem/iro-bem-related-element'; 14 @import 'bem/related-element';
13 @import 'bem/iro-bem-next-twin-element'; 15 @import 'bem/next-twin-element';
14 @import 'bem/iro-bem-modifier'; 16 @import 'bem/modifier';
15 @import 'bem/iro-bem-suffix'; 17 @import 'bem/suffix';
16 @import 'bem/iro-bem-state'; 18 @import 'bem/state';
17 @import 'bem/iro-bem-multi'; 19 @import 'bem/multi';
18 @import 'bem/examples'; 20 @import 'bem/examples';
19} 21}
diff --git a/test/_contexts.scss b/test/_contexts.scss
index 1b0e602..510f79b 100644
--- a/test/_contexts.scss
+++ b/test/_contexts.scss
@@ -1,65 +1,68 @@
1@include describe('Contexts') { 1@use 'true' as *;
2@use '../src/contexts';
3
4@include describe('contexts') {
2 @include it('Creating / deleting context stacks') { 5 @include it('Creating / deleting context stacks') {
3 @include assert-equal(iro-context-stack-create('test'), null, 'Check if context stack was created'); 6 @include assert-equal(contexts.create('test'), null, 'Check if context stack was created');
4 @include assert-equal(iro-context-stack-delete('test'), null, 'Check if context stack was deleted'); 7 @include assert-equal(contexts.delete('test'), null, 'Check if context stack was deleted');
5 } 8 }
6 9
7 @include it('Adding / removing contexts') { 10 @include it('Adding / removing contexts') {
8 @include assert-equal(iro-context-stack-create('test'), null, 'Check if context stack was created'); 11 @include assert-equal(contexts.create('test'), null, 'Check if context stack was created');
9 12
10 @include assert-equal(iro-context-push('test', 'ctx', 1234), 'ctx' 1234, 'Check if context 1 was pushed'); 13 @include assert-equal(contexts.push('test', 'ctx', 1234), 'ctx' 1234, 'Check if context 1 was pushed');
11 @include assert-equal(iro-context-push('test', 'another', 'text'), 'another' 'text', 'Check if context 2 was pushed'); 14 @include assert-equal(contexts.push('test', 'another', 'text'), 'another' 'text', 'Check if context 2 was pushed');
12 @include assert-equal(iro-context-push('test', 'ctx', 56), 'ctx' 56, 'Check if context 3 was pushed'); 15 @include assert-equal(contexts.push('test', 'ctx', 56), 'ctx' 56, 'Check if context 3 was pushed');
13 16
14 @include assert-equal(iro-context-pop('test'), 'ctx' 56, 'Check if context 3 was popped'); 17 @include assert-equal(contexts.pop('test'), 'ctx' 56, 'Check if context 3 was popped');
15 @include assert-equal(iro-context-pop('test'), 'another' 'text', 'Check if context 2 was popped'); 18 @include assert-equal(contexts.pop('test'), 'another' 'text', 'Check if context 2 was popped');
16 @include assert-equal(iro-context-pop('test'), 'ctx' 1234, 'Check if context 1 was popped'); 19 @include assert-equal(contexts.pop('test'), 'ctx' 1234, 'Check if context 1 was popped');
17 20
18 @include assert-equal(iro-context-stack-delete('test'), null, 'Check if context stack was deleted'); 21 @include assert-equal(contexts.delete('test'), null, 'Check if context stack was deleted');
19 } 22 }
20 23
21 @include it('Clearing / counting context stacks') { 24 @include it('Clearing / counting context stacks') {
22 @include assert-equal(iro-context-stack-create('test'), null, 'Check if context stack was created'); 25 @include assert-equal(contexts.create('test'), null, 'Check if context stack was created');
23 26
24 @include assert-equal(iro-context-push('test', 'ctx', 1234), 'ctx' 1234, 'Check if context 1 was pushed'); 27 @include assert-equal(contexts.push('test', 'ctx', 1234), 'ctx' 1234, 'Check if context 1 was pushed');
25 @include assert-equal(iro-context-push('test', 'another', 'text'), 'another' 'text', 'Check if context 2 was pushed'); 28 @include assert-equal(contexts.push('test', 'another', 'text'), 'another' 'text', 'Check if context 2 was pushed');
26 @include assert-equal(iro-context-push('test', 'ctx', 56), 'ctx' 56, 'Check if context 3 was pushed'); 29 @include assert-equal(contexts.push('test', 'ctx', 56), 'ctx' 56, 'Check if context 3 was pushed');
27 30
28 @include assert-equal(iro-context-stack-count('test'), 3, 'Check if context stack contains 3 contexts'); 31 @include assert-equal(contexts.count('test'), 3, 'Check if context stack contains 3 contexts');
29 @include assert-equal(iro-context-pop('test'), 'ctx' 56, 'Check if context 3 was popped'); 32 @include assert-equal(contexts.pop('test'), 'ctx' 56, 'Check if context 3 was popped');
30 @include assert-equal(iro-context-stack-count('test'), 2, 'Check if context stack contains 2 contexts'); 33 @include assert-equal(contexts.count('test'), 2, 'Check if context stack contains 2 contexts');
31 @include assert-equal(iro-context-stack-clear('test'), null, 'Check if context stack was cleared'); 34 @include assert-equal(contexts.clear('test'), null, 'Check if context stack was cleared');
32 @include assert-equal(iro-context-stack-count('test'), 0, 'Check if context stack contains no contexts'); 35 @include assert-equal(contexts.count('test'), 0, 'Check if context stack contains no contexts');
33 36
34 @include assert-equal(iro-context-stack-delete('test'), null, 'Check if context stack was deleted'); 37 @include assert-equal(contexts.delete('test'), null, 'Check if context stack was deleted');
35 } 38 }
36 39
37 @include it('Retrieving contexts') { 40 @include it('Retrieving contexts') {
38 @include assert-equal(iro-context-stack-create('test'), null, 'Check if context stack was created'); 41 @include assert-equal(contexts.create('test'), null, 'Check if context stack was created');
39 42
40 @include assert-equal(iro-context-push('test', 'ctx', 1234), 'ctx' 1234, 'Check if context 1 was pushed'); 43 @include assert-equal(contexts.push('test', 'ctx', 1234), 'ctx' 1234, 'Check if context 1 was pushed');
41 @include assert-equal(iro-context-push('test', 'another', 'text'), 'another' 'text', 'Check if context 2 was pushed'); 44 @include assert-equal(contexts.push('test', 'another', 'text'), 'another' 'text', 'Check if context 2 was pushed');
42 @include assert-equal(iro-context-push('test', 'ctx', 56), 'ctx' 56, 'Check if context 3 was pushed'); 45 @include assert-equal(contexts.push('test', 'ctx', 56), 'ctx' 56, 'Check if context 3 was pushed');
43 46
44 @include assert-equal(iro-context-get('test', 1), 'ctx' 56, 'Check if context at position 1 is context 3'); 47 @include assert-equal(contexts.get('test', 1), 'ctx' 56, 'Check if context at position 1 is context 3');
45 @include assert-equal(iro-context-get('test', 'ctx'), 'ctx' 56, 'Check if latest context with id "ctx" is context 3'); 48 @include assert-equal(contexts.get('test', 'ctx'), 'ctx' 56, 'Check if latest context with id "ctx" is context 3');
46 @include assert-equal(iro-context-get('test', 2), 'another' 'text', 'Check if latest context with id "another" is context 2'); 49 @include assert-equal(contexts.get('test', 2), 'another' 'text', 'Check if latest context with id "another" is context 2');
47 50
48 @include assert-equal(iro-context-pop('test'), 'ctx' 56, 'Check if context 3 was popped'); 51 @include assert-equal(contexts.pop('test'), 'ctx' 56, 'Check if context 3 was popped');
49 52
50 @include assert-equal(iro-context-get('test', 1), 'another' 'text', 'Check if context at position 1 is context 2'); 53 @include assert-equal(contexts.get('test', 1), 'another' 'text', 'Check if context at position 1 is context 2');
51 @include assert-equal(iro-context-get('test', -1), 'ctx' 1234, 'Check if latest context with id "ctx" is context 1'); 54 @include assert-equal(contexts.get('test', -1), 'ctx' 1234, 'Check if latest context with id "ctx" is context 1');
52 55
53 @include assert-equal(iro-context-push('test', 'more', 'string'), 'more' 'string', 'Check if context 4 was pushed'); 56 @include assert-equal(contexts.push('test', 'more', 'string'), 'more' 'string', 'Check if context 4 was pushed');
54 57
55 @include assert-equal(iro-context-get('test', 1), 'more' 'string', 'Check if context at position 1 is context 4'); 58 @include assert-equal(contexts.get('test', 1), 'more' 'string', 'Check if context at position 1 is context 4');
56 @include assert-equal(iro-context-get('test', 'more'), 'more' 'string', 'Check if latest context with id "more" is context 4'); 59 @include assert-equal(contexts.get('test', 'more'), 'more' 'string', 'Check if latest context with id "more" is context 4');
57 60
58 @include assert-equal(iro-context-pop('test'), 'more' 'string', 'Check if context 4 was popped'); 61 @include assert-equal(contexts.pop('test'), 'more' 'string', 'Check if context 4 was popped');
59 @include assert-equal(iro-context-pop('test'), 'another' 'text', 'Check if context 2 was popped'); 62 @include assert-equal(contexts.pop('test'), 'another' 'text', 'Check if context 2 was popped');
60 63
61 @include assert-equal(iro-context-get('test', 1), iro-context-get('test', -1), 'Check if first and last context are context 1'); 64 @include assert-equal(contexts.get('test', 1), contexts.get('test', -1), 'Check if first and last context are context 1');
62 65
63 @include assert-equal(iro-context-stack-delete('test'), null, 'Check if context stack was deleted'); 66 @include assert-equal(contexts.delete('test'), null, 'Check if context stack was deleted');
64 } 67 }
65} 68}
diff --git a/test/_functions.scss b/test/_functions.scss
index 54e37c5..2430f28 100644
--- a/test/_functions.scss
+++ b/test/_functions.scss
@@ -1,44 +1,47 @@
1@include describe('Functions') { 1@use 'true' as *;
2 @include it('iro-str-replace') { 2@use '../src/functions';
3
4@include describe('functions') {
5 @include it('str-replace') {
3 $str: 'Hello world!'; 6 $str: 'Hello world!';
4 7
5 @include assert-equal(iro-str-replace($str, 'world', 'neighbor'), 'Hello neighbor!', 'Replace "world" with "neighbor"'); 8 @include assert-equal(functions.str-replace($str, 'world', 'neighbor'), 'Hello neighbor!', 'Replace "world" with "neighbor"');
6 @include assert-equal(iro-str-replace($str, 'neighbor', 'moon'), 'Hello world!', 'Replace "neighbor" with "moon"'); 9 @include assert-equal(functions.str-replace($str, 'neighbor', 'moon'), 'Hello world!', 'Replace "neighbor" with "moon"');
7 @include assert-equal(iro-str-replace($str, 'Hello', 'Bye'), 'Bye world!', 'Replace "Hello" with "Bye"'); 10 @include assert-equal(functions.str-replace($str, 'Hello', 'Bye'), 'Bye world!', 'Replace "Hello" with "Bye"');
8 } 11 }
9 12
10 @include it('iro-list-slice') { 13 @include it('list-slice') {
11 $list: 'this' 'is' 'a' 'list'; 14 $list: 'this' 'is' 'a' 'list';
12 15
13 @include assert-equal(iro-list-slice($list, 2), 'is' 'a' 'list', 'Discard first item'); 16 @include assert-equal(functions.list-slice($list, 2), 'is' 'a' 'list', 'Discard first item');
14 @include assert-equal(iro-list-slice($list, 1, 3), 'this' 'is' 'a', 'Keep first 3 items'); 17 @include assert-equal(functions.list-slice($list, 1, 3), 'this' 'is' 'a', 'Keep first 3 items');
15 @include assert-equal(iro-list-slice($list, 2, 3), 'is' 'a', 'Extract list from index 2 to 3'); 18 @include assert-equal(functions.list-slice($list, 2, 3), 'is' 'a', 'Extract list from index 2 to 3');
16 @include assert-equal(iro-list-slice($list, -1, -1), join((), 'list'), 'Keep last item'); 19 @include assert-equal(functions.list-slice($list, -1, -1), join((), 'list'), 'Keep last item');
17 @include assert-equal(iro-list-slice($list, -1, 1), 'list' 'this', 'Extract first and last item'); 20 @include assert-equal(functions.list-slice($list, -1, 1), 'list' 'this', 'Extract first and last item');
18 } 21 }
19 22
20 @include it('iro-list-prepend') { 23 @include it('list-prepend') {
21 $list: 'this' 'is' 'a' 'list'; 24 $list: 'this' 'is' 'a' 'list';
22 25
23 @include assert-equal(iro-list-prepend($list, 'and'), 'and' 'this' 'is' 'a' 'list', 'Prepend "and"'); 26 @include assert-equal(functions.list-prepend($list, 'and'), 'and' 'this' 'is' 'a' 'list', 'Prepend "and"');
24 @include assert-equal(iro-list-prepend($list, 2), 2 'this' 'is' 'a' 'list', 'Prepend 2'); 27 @include assert-equal(functions.list-prepend($list, 2), 2 'this' 'is' 'a' 'list', 'Prepend 2');
25 } 28 }
26 29
27 @include it('iro-quicksort') { 30 @include it('quicksort') {
28 @include assert-equal(iro-quicksort(1 2 3 4 5), 1 2 3 4 5, 'Already sorted list of 5 items'); 31 @include assert-equal(functions.quicksort(1 2 3 4 5), 1 2 3 4 5, 'Already sorted list of 5 items');
29 @include assert-equal(iro-quicksort(1 3 2), 1 2 3, 'Random list of 3 items'); 32 @include assert-equal(functions.quicksort(1 3 2), 1 2 3, 'Random list of 3 items');
30 @include assert-equal(iro-quicksort(6 3 7 3 8 1 4), 1 3 3 4 6 7 8, 'Random list of 7 items, one duplicate'); 33 @include assert-equal(functions.quicksort(6 3 7 3 8 1 4), 1 3 3 4 6 7 8, 'Random list of 7 items, one duplicate');
31 @include assert-equal(iro-quicksort(1 1 1 1), 1 1 1 1, 'List of 4 identical items'); 34 @include assert-equal(functions.quicksort(1 1 1 1), 1 1 1 1, 'List of 4 identical items');
32 } 35 }
33 36
34 @include it('iro-map-get-default') { 37 @include it('map-get-default') {
35 $map: ('key': 'value', 'another': 'item'); 38 $map: ('key': 'value', 'another': 'item');
36 39
37 @include assert-equal(iro-map-get-default($map, 'another', 0), map-get($map, 'another'), 'Get existing value'); 40 @include assert-equal(functions.map-get-default($map, 'another', 0), map-get($map, 'another'), 'Get existing value');
38 @include assert-equal(iro-map-get-default($map, 'index', 'nothing'), 'nothing', 'Get missing value'); 41 @include assert-equal(functions.map-get-default($map, 'index', 'nothing'), 'nothing', 'Get missing value');
39 } 42 }
40 43
41 @include it('iro-map-get-deep') { 44 @include it('map-get-deep') {
42 $map: ( 45 $map: (
43 'key': 'value', 46 'key': 'value',
44 'sub': ( 47 'sub': (
@@ -51,14 +54,14 @@
51 ) 54 )
52 ); 55 );
53 56
54 @include assert-equal(iro-map-get-deep($map, 'key'), map-get($map, 'key'), 'Get value in root level'); 57 @include assert-equal(functions.map-get-deep($map, 'key'), map-get($map, 'key'), 'Get value in root level');
55 @include assert-equal(iro-map-get-deep($map, 'sub' 'item1'), map-get(map-get($map, 'sub'), 'item1'), 'Get value in first level'); 58 @include assert-equal(functions.map-get-deep($map, 'sub' 'item1'), map-get(map-get($map, 'sub'), 'item1'), 'Get value in first level');
56 @include assert-equal(iro-map-get-deep($map, 'sub' 'item2'), map-get(map-get($map, 'sub'), 'item2'), 'Get value in first level'); 59 @include assert-equal(functions.map-get-deep($map, 'sub' 'item2'), map-get(map-get($map, 'sub'), 'item2'), 'Get value in first level');
57 @include assert-equal(iro-map-get-deep($map, 'sub' 'subsub' 'item1'), map-get(map-get(map-get($map, 'sub'), 'subsub'), 'item1'), 'Get value in second level'); 60 @include assert-equal(functions.map-get-deep($map, 'sub' 'subsub' 'item1'), map-get(map-get(map-get($map, 'sub'), 'subsub'), 'item1'), 'Get value in second level');
58 @include assert-equal(iro-map-get-deep($map, 'sub' 'subsub' 'item2'), map-get(map-get(map-get($map, 'sub'), 'subsub'), 'item2'), 'Get value in second level'); 61 @include assert-equal(functions.map-get-deep($map, 'sub' 'subsub' 'item2'), map-get(map-get(map-get($map, 'sub'), 'subsub'), 'item2'), 'Get value in second level');
59 } 62 }
60 63
61 @include it('iro-map-merge-recursive') { 64 @include it('map-merge-recursive') {
62 $map1: ( 65 $map1: (
63 'key': 'value', 66 'key': 'value',
64 'sub': ( 67 'sub': (
@@ -84,20 +87,20 @@
84 ) 87 )
85 ); 88 );
86 89
87 @include assert-equal(iro-map-merge-recursive($map1, $map2), $expected); 90 @include assert-equal(functions.map-merge-recursive($map1, $map2), $expected);
88 } 91 }
89 92
90 @include it('iro-strip-unit') { 93 @include it('strip-unit') {
91 @include assert-true(unitless(iro-strip-unit(1em)), 'Remove unit from 1em'); 94 @include assert-true(unitless(functions.strip-unit(1em)), 'Remove unit from 1em');
92 @include assert-true(unitless(iro-strip-unit(2rem)), 'Remove unit from 2rem'); 95 @include assert-true(unitless(functions.strip-unit(2rem)), 'Remove unit from 2rem');
93 @include assert-true(unitless(iro-strip-unit(3px)), 'Remove unit from 3px'); 96 @include assert-true(unitless(functions.strip-unit(3px)), 'Remove unit from 3px');
94 @include assert-true(unitless(iro-strip-unit(4)), 'Remove unit from 4'); 97 @include assert-true(unitless(functions.strip-unit(4)), 'Remove unit from 4');
95 @include assert-true(unitless(iro-strip-unit(5pt)), 'Remove unit from 5pt'); 98 @include assert-true(unitless(functions.strip-unit(5pt)), 'Remove unit from 5pt');
96 } 99 }
97 100
98 @include it('iro-px-to-rem') { 101 @include it('px-to-rem') {
99 @include assert-equal(iro-px-to-rem(16px, 16px), 1rem, 'Convert 16px'); 102 @include assert-equal(functions.px-to-rem(16px, 16px), 1rem, 'Convert 16px');
100 @include assert-equal(iro-px-to-rem(32px, 16px), 2rem, 'Convert 16px'); 103 @include assert-equal(functions.px-to-rem(32px, 16px), 2rem, 'Convert 16px');
101 @include assert-equal(iro-px-to-rem(8px, 16px), 0.5rem, 'Convert 16px'); 104 @include assert-equal(functions.px-to-rem(8px, 16px), 0.5rem, 'Convert 16px');
102 } 105 }
103} 106}
diff --git a/test/_gradients.scss b/test/_gradients.scss
index c1145aa..c11439c 100644
--- a/test/_gradients.scss
+++ b/test/_gradients.scss
@@ -1,8 +1,12 @@
1// sass-lint:disable no-color-literals zero-unit 1// sass-lint:disable no-color-literals zero-unit
2 2
3@include describe('Gradients') { 3@use 'true' as *;
4 @include it('iro-easing-gradient') { 4@use '../src/easing';
5 $gradient1: iro-easing-gradient( 5@use '../src/gradients';
6
7@include describe('gradients') {
8 @include it('easing-gradient') {
9 $gradient1: gradients.easing-gradient(
6 linear, 10 linear,
7 to right, 11 to right,
8 #000, 12 #000,
@@ -13,9 +17,9 @@
13 $expected1: linear-gradient( 17 $expected1: linear-gradient(
14 to right, 18 to right,
15 #000 0, 19 #000 0,
16 mix(transparent, #000, iro-ease-in-quad(0.25) * 100%) 25%, 20 mix(transparent, #000, easing.ease-in-quad(0.25) * 100%) 25%,
17 mix(transparent, #000, iro-ease-in-quad(0.5) * 100%) 50%, 21 mix(transparent, #000, easing.ease-in-quad(0.5) * 100%) 50%,
18 mix(transparent, #000, iro-ease-in-quad(0.75) * 100%) 75%, 22 mix(transparent, #000, easing.ease-in-quad(0.75) * 100%) 75%,
19 transparent 100% 23 transparent 100%
20 ); 24 );
21 25
@@ -23,7 +27,7 @@
23 27
24 // --------------------------------------------------------------------------- 28 // ---------------------------------------------------------------------------
25 29
26 $gradient2: iro-easing-gradient( 30 $gradient2: gradients.easing-gradient(
27 radial, 31 radial,
28 1em 2em at 50% 60%, 32 1em 2em at 50% 60%,
29 #000, 33 #000,
@@ -34,9 +38,9 @@
34 $expected2: radial-gradient( 38 $expected2: radial-gradient(
35 1em 2em at 50% 60%, 39 1em 2em at 50% 60%,
36 #000 0, 40 #000 0,
37 mix(transparent, #000, iro-ease-out-cubic(0.25) * 100%) 25%, 41 mix(transparent, #000, easing.ease-out-cubic(0.25) * 100%) 25%,
38 mix(transparent, #000, iro-ease-out-cubic(0.5) * 100%) 50%, 42 mix(transparent, #000, easing.ease-out-cubic(0.5) * 100%) 50%,
39 mix(transparent, #000, iro-ease-out-cubic(0.75) * 100%) 75%, 43 mix(transparent, #000, easing.ease-out-cubic(0.75) * 100%) 75%,
40 transparent 100% 44 transparent 100%
41 ); 45 );
42 46
@@ -44,7 +48,7 @@
44 48
45 // --------------------------------------------------------------------------- 49 // ---------------------------------------------------------------------------
46 50
47 $gradient3: iro-easing-gradient( 51 $gradient3: gradients.easing-gradient(
48 linear, 52 linear,
49 to right, 53 to right,
50 #000 2em, 54 #000 2em,
@@ -55,9 +59,9 @@
55 $expected3: linear-gradient( 59 $expected3: linear-gradient(
56 to right, 60 to right,
57 #000 2em, 61 #000 2em,
58 mix(transparent, #000, iro-ease-in-quad(0.25) * 100%) 4em, 62 mix(transparent, #000, easing.ease-in-quad(0.25) * 100%) 4em,
59 mix(transparent, #000, iro-ease-in-quad(0.5) * 100%) 6em, 63 mix(transparent, #000, easing.ease-in-quad(0.5) * 100%) 6em,
60 mix(transparent, #000, iro-ease-in-quad(0.75) * 100%) 8em, 64 mix(transparent, #000, easing.ease-in-quad(0.75) * 100%) 8em,
61 transparent 10em 65 transparent 10em
62 ); 66 );
63 67
@@ -65,7 +69,7 @@
65 69
66 // --------------------------------------------------------------------------- 70 // ---------------------------------------------------------------------------
67 71
68 $gradient4: iro-easing-gradient( 72 $gradient4: gradients.easing-gradient(
69 linear, 73 linear,
70 to right, 74 to right,
71 #000 20%, 75 #000 20%,
@@ -76,9 +80,9 @@
76 $expected4: linear-gradient( 80 $expected4: linear-gradient(
77 to right, 81 to right,
78 #000 20%, 82 #000 20%,
79 mix(transparent, #000, iro-ease-in-quad(0.25) * 100%) calc(20% + (20% + 10em - 20%) * 0.25), 83 mix(transparent, #000, easing.ease-in-quad(0.25) * 100%) calc(20% + (20% + 10em - 20%) * 0.25),
80 mix(transparent, #000, iro-ease-in-quad(0.5) * 100%) calc(20% + (20% + 10em - 20%) * 0.5), 84 mix(transparent, #000, easing.ease-in-quad(0.5) * 100%) calc(20% + (20% + 10em - 20%) * 0.5),
81 mix(transparent, #000, iro-ease-in-quad(0.75) * 100%) calc(20% + (20% + 10em - 20%) * 0.75), 85 mix(transparent, #000, easing.ease-in-quad(0.75) * 100%) calc(20% + (20% + 10em - 20%) * 0.75),
82 transparent calc(20% + 10em) 86 transparent calc(20% + 10em)
83 ); 87 );
84 88
@@ -86,7 +90,7 @@
86 90
87 // --------------------------------------------------------------------------- 91 // ---------------------------------------------------------------------------
88 92
89 $gradient5: iro-easing-gradient( 93 $gradient5: gradients.easing-gradient(
90 linear, 94 linear,
91 to right, 95 to right,
92 #000 2em, 96 #000 2em,
@@ -99,9 +103,9 @@
99 to right, 103 to right,
100 #000 2em, 104 #000 2em,
101 #f00 7em, 105 #f00 7em,
102 mix(transparent, #f00, iro-ease-in-quad(0.25) * 100%) 7em + 3em * 0.25, 106 mix(transparent, #f00, easing.ease-in-quad(0.25) * 100%) 7em + 3em * 0.25,
103 mix(transparent, #f00, iro-ease-in-quad(0.5) * 100%) 7em + 3em * 0.5, 107 mix(transparent, #f00, easing.ease-in-quad(0.5) * 100%) 7em + 3em * 0.5,
104 mix(transparent, #f00, iro-ease-in-quad(0.75) * 100%) 7em + 3em * 0.75, 108 mix(transparent, #f00, easing.ease-in-quad(0.75) * 100%) 7em + 3em * 0.75,
105 transparent 10em 109 transparent 10em
106 ); 110 );
107 111
@@ -109,7 +113,7 @@
109 113
110 // --------------------------------------------------------------------------- 114 // ---------------------------------------------------------------------------
111 115
112 $gradient6: iro-easing-gradient( 116 $gradient6: gradients.easing-gradient(
113 linear, 117 linear,
114 to right, 118 to right,
115 #000 2em, 119 #000 2em,
@@ -122,13 +126,13 @@
122 $expected6: linear-gradient( 126 $expected6: linear-gradient(
123 to right, 127 to right,
124 #000 2em, 128 #000 2em,
125 mix(#f00, #000, iro-ease-in-quad(0.25) * 100%) 2em + 5em * 0.25, 129 mix(#f00, #000, easing.ease-in-quad(0.25) * 100%) 2em + 5em * 0.25,
126 mix(#f00, #000, iro-ease-in-quad(0.5) * 100%) 2em + 5em * 0.5, 130 mix(#f00, #000, easing.ease-in-quad(0.5) * 100%) 2em + 5em * 0.5,
127 mix(#f00, #000, iro-ease-in-quad(0.75) * 100%) 2em + 5em * 0.75, 131 mix(#f00, #000, easing.ease-in-quad(0.75) * 100%) 2em + 5em * 0.75,
128 #f00 7em, 132 #f00 7em,
129 mix(transparent, #f00, iro-ease-in-quad(0.25) * 100%) 7em + 3em * 0.25, 133 mix(transparent, #f00, easing.ease-in-quad(0.25) * 100%) 7em + 3em * 0.25,
130 mix(transparent, #f00, iro-ease-in-quad(0.5) * 100%) 7em + 3em * 0.5, 134 mix(transparent, #f00, easing.ease-in-quad(0.5) * 100%) 7em + 3em * 0.5,
131 mix(transparent, #f00, iro-ease-in-quad(0.75) * 100%) 7em + 3em * 0.75, 135 mix(transparent, #f00, easing.ease-in-quad(0.75) * 100%) 7em + 3em * 0.75,
132 transparent 10em 136 transparent 10em
133 ); 137 );
134 138
@@ -136,7 +140,7 @@
136 140
137 // --------------------------------------------------------------------------- 141 // ---------------------------------------------------------------------------
138 142
139 $gradient7: iro-easing-gradient( 143 $gradient7: gradients.easing-gradient(
140 linear, 144 linear,
141 to right, 145 to right,
142 #000 2em, 146 #000 2em,
@@ -149,13 +153,13 @@
149 $expected7: linear-gradient( 153 $expected7: linear-gradient(
150 to right, 154 to right,
151 #000 2em, 155 #000 2em,
152 mix(#f00, #000, iro-ease-in-quad(0.25) * 100%) 2em + 4em * 0.25, 156 mix(#f00, #000, easing.ease-in-quad(0.25) * 100%) 2em + 4em * 0.25,
153 mix(#f00, #000, iro-ease-in-quad(0.5) * 100%) 2em + 4em * 0.5, 157 mix(#f00, #000, easing.ease-in-quad(0.5) * 100%) 2em + 4em * 0.5,
154 mix(#f00, #000, iro-ease-in-quad(0.75) * 100%) 2em + 4em * 0.75, 158 mix(#f00, #000, easing.ease-in-quad(0.75) * 100%) 2em + 4em * 0.75,
155 #f00 6em, 159 #f00 6em,
156 mix(transparent, #f00, iro-ease-in-quad(0.25) * 100%) 6em + 4em * 0.25, 160 mix(transparent, #f00, easing.ease-in-quad(0.25) * 100%) 6em + 4em * 0.25,
157 mix(transparent, #f00, iro-ease-in-quad(0.5) * 100%) 6em + 4em * 0.5, 161 mix(transparent, #f00, easing.ease-in-quad(0.5) * 100%) 6em + 4em * 0.5,
158 mix(transparent, #f00, iro-ease-in-quad(0.75) * 100%) 6em + 4em * 0.75, 162 mix(transparent, #f00, easing.ease-in-quad(0.75) * 100%) 6em + 4em * 0.75,
159 transparent 10em 163 transparent 10em
160 ); 164 );
161 165
@@ -163,7 +167,7 @@
163 167
164 // --------------------------------------------------------------------------- 168 // ---------------------------------------------------------------------------
165 169
166 $gradient8: iro-easing-gradient( 170 $gradient8: gradients.easing-gradient(
167 linear, 171 linear,
168 to right, 172 to right,
169 #000, 173 #000,
@@ -176,13 +180,13 @@
176 $expected8: linear-gradient( 180 $expected8: linear-gradient(
177 to right, 181 to right,
178 #000 0, 182 #000 0,
179 mix(#f00, #000, iro-ease-in-quad(0.25) * 100%) 50% * 0.25, 183 mix(#f00, #000, easing.ease-in-quad(0.25) * 100%) 50% * 0.25,
180 mix(#f00, #000, iro-ease-in-quad(0.5) * 100%) 50% * 0.5, 184 mix(#f00, #000, easing.ease-in-quad(0.5) * 100%) 50% * 0.5,
181 mix(#f00, #000, iro-ease-in-quad(0.75) * 100%) 50% * 0.75, 185 mix(#f00, #000, easing.ease-in-quad(0.75) * 100%) 50% * 0.75,
182 #f00 50%, 186 #f00 50%,
183 mix(transparent, #f00, iro-ease-in-quad(0.25) * 100%) 50% + 50% * 0.25, 187 mix(transparent, #f00, easing.ease-in-quad(0.25) * 100%) 50% + 50% * 0.25,
184 mix(transparent, #f00, iro-ease-in-quad(0.5) * 100%) 50% + 50% * 0.5, 188 mix(transparent, #f00, easing.ease-in-quad(0.5) * 100%) 50% + 50% * 0.5,
185 mix(transparent, #f00, iro-ease-in-quad(0.75) * 100%) 50% + 50% * 0.75, 189 mix(transparent, #f00, easing.ease-in-quad(0.75) * 100%) 50% + 50% * 0.75,
186 transparent 100% 190 transparent 100%
187 ); 191 );
188 192
@@ -190,7 +194,7 @@
190 194
191 // --------------------------------------------------------------------------- 195 // ---------------------------------------------------------------------------
192 196
193 $gradient9: iro-easing-gradient( 197 $gradient9: gradients.easing-gradient(
194 linear, 198 linear,
195 to right, 199 to right,
196 #000, 200 #000,
@@ -203,13 +207,13 @@
203 $expected9: linear-gradient( 207 $expected9: linear-gradient(
204 to right, 208 to right,
205 #000 0, 209 #000 0,
206 mix(#f00, #000, iro-ease-in-quad(0.25) * 100%) 10em * 0.25, 210 mix(#f00, #000, easing.ease-in-quad(0.25) * 100%) 10em * 0.25,
207 mix(#f00, #000, iro-ease-in-quad(0.5) * 100%) 10em * 0.5, 211 mix(#f00, #000, easing.ease-in-quad(0.5) * 100%) 10em * 0.5,
208 mix(#f00, #000, iro-ease-in-quad(0.75) * 100%) 10em * 0.75, 212 mix(#f00, #000, easing.ease-in-quad(0.75) * 100%) 10em * 0.75,
209 #f00 10em, 213 #f00 10em,
210 mix(transparent, #f00, iro-ease-in-quad(0.25) * 100%) 10em + 10em * 0.25, 214 mix(transparent, #f00, easing.ease-in-quad(0.25) * 100%) 10em + 10em * 0.25,
211 mix(transparent, #f00, iro-ease-in-quad(0.5) * 100%) 10em + 10em * 0.5, 215 mix(transparent, #f00, easing.ease-in-quad(0.5) * 100%) 10em + 10em * 0.5,
212 mix(transparent, #f00, iro-ease-in-quad(0.75) * 100%) 10em + 10em * 0.75, 216 mix(transparent, #f00, easing.ease-in-quad(0.75) * 100%) 10em + 10em * 0.75,
213 transparent 20em 217 transparent 20em
214 ); 218 );
215 219
@@ -217,7 +221,7 @@
217 221
218 // --------------------------------------------------------------------------- 222 // ---------------------------------------------------------------------------
219 223
220 $gradient10: iro-easing-gradient( 224 $gradient10: gradients.easing-gradient(
221 linear, 225 linear,
222 to right, 226 to right,
223 #000, 227 #000,
@@ -228,9 +232,9 @@
228 $expected10: linear-gradient( 232 $expected10: linear-gradient(
229 to right, 233 to right,
230 #000 0, 234 #000 0,
231 mix(transparent, #000, iro-cubic-bezier(0.47, 0, 0.745, 0.715, 0.25) * 100%) 25%, 235 mix(transparent, #000, easing.cubic-bezier(0.47, 0, 0.745, 0.715, 0.25) * 100%) 25%,
232 mix(transparent, #000, iro-cubic-bezier(0.47, 0, 0.745, 0.715, 0.5) * 100%) 50%, 236 mix(transparent, #000, easing.cubic-bezier(0.47, 0, 0.745, 0.715, 0.5) * 100%) 50%,
233 mix(transparent, #000, iro-cubic-bezier(0.47, 0, 0.745, 0.715, 0.75) * 100%) 75%, 237 mix(transparent, #000, easing.cubic-bezier(0.47, 0, 0.745, 0.715, 0.75) * 100%) 75%,
234 transparent 100% 238 transparent 100%
235 ); 239 );
236 240
@@ -238,7 +242,7 @@
238 242
239 // --------------------------------------------------------------------------- 243 // ---------------------------------------------------------------------------
240 244
241 $gradient11: iro-easing-gradient( 245 $gradient11: gradients.easing-gradient(
242 linear, 246 linear,
243 to right, 247 to right,
244 #000, 248 #000,
diff --git a/test/_harmony.scss b/test/_harmony.scss
index 7945be1..c7d309c 100644
--- a/test/_harmony.scss
+++ b/test/_harmony.scss
@@ -1,46 +1,49 @@
1@use 'true' as *;
1@use 'sass:math'; 2@use 'sass:math';
3@use '../src/functions';
4@use '../src/harmony';
2 5
3@function _limit-decimals($n) { 6@function _limit-decimals($n) {
4 @return math.div(math.floor($n * 1000), 1000); 7 @return math.div(math.floor($n * 1000), 1000);
5} 8}
6 9
7@include describe('Harmony') { 10@include describe('harmony') {
8 @include it('iro-harmony-modular-scale') { 11 @include it('modular-scale') {
9 @include assert-equal(_limit-decimals(iro-harmony-modular-scale(0, 1em, 1.1)), 1em, 'Zero iterations, 1em base, 1.1 scale'); 12 @include assert-equal(_limit-decimals(harmony.modular-scale(0, 1em, 1.1)), 1em, 'Zero iterations, 1em base, 1.1 scale');
10 @include assert-equal(_limit-decimals(iro-harmony-modular-scale(1, 1em, 1.1)), 1.1em, '1 iteration, 1em base, 1.1 scale'); 13 @include assert-equal(_limit-decimals(harmony.modular-scale(1, 1em, 1.1)), 1.1em, '1 iteration, 1em base, 1.1 scale');
11 @include assert-equal(_limit-decimals(iro-harmony-modular-scale(2, 2px, 1.2)), 2.88px, '2 iterations, 2px base, 1.2 scale'); 14 @include assert-equal(_limit-decimals(harmony.modular-scale(2, 2px, 1.2)), 2.88px, '2 iterations, 2px base, 1.2 scale');
12 @include assert-equal(_limit-decimals(iro-harmony-modular-scale(-1, 2rem, 2)), 1rem, '-1 iteration, 2rem base, 2 scale'); 15 @include assert-equal(_limit-decimals(harmony.modular-scale(-1, 2rem, 2)), 1rem, '-1 iteration, 2rem base, 2 scale');
13 @include assert-equal(_limit-decimals(iro-harmony-modular-scale(-2, 2rem, 2)), 0.5rem, '-2 iterations, 2rem base, 2 scale'); 16 @include assert-equal(_limit-decimals(harmony.modular-scale(-2, 2rem, 2)), 0.5rem, '-2 iterations, 2rem base, 2 scale');
14 17
15 @include assert-equal(_limit-decimals(iro-harmony-modular-scale(0, 1em 2em, 1.1)), 1em, 'Zero iterations, 1em 2em base, 1.1 scale'); 18 @include assert-equal(_limit-decimals(harmony.modular-scale(0, 1em 2em, 1.1)), 1em, 'Zero iterations, 1em 2em base, 1.1 scale');
16 @include assert-equal(_limit-decimals(iro-harmony-modular-scale(1, 1em 2em, 1.1)), 1.026em, '1 iteration, 1em 2em base, 1.1 scale'); 19 @include assert-equal(_limit-decimals(harmony.modular-scale(1, 1em 2em, 1.1)), 1.026em, '1 iteration, 1em 2em base, 1.1 scale');
17 @include assert-equal(_limit-decimals(iro-harmony-modular-scale(2, 1em 2em, 1.1)), 1.1em, '2 iterations, 1em 2em base, 1.1 scale'); 20 @include assert-equal(_limit-decimals(harmony.modular-scale(2, 1em 2em, 1.1)), 1.1em, '2 iterations, 1em 2em base, 1.1 scale');
18 @include assert-equal(_limit-decimals(iro-harmony-modular-scale(-1, 1em 1.5em, 1.2)), 0.868em, '-1 iteration, 1em 2em base, 1.1 scale'); 21 @include assert-equal(_limit-decimals(harmony.modular-scale(-1, 1em 1.5em, 1.2)), 0.868em, '-1 iteration, 1em 2em base, 1.1 scale');
19 @include assert-equal(_limit-decimals(iro-harmony-modular-scale(-2, 1em 1.5em, 1.2)), 0.833em, '-2 iterations, 1em 2em base, 1.1 scale'); 22 @include assert-equal(_limit-decimals(harmony.modular-scale(-2, 1em 1.5em, 1.2)), 0.833em, '-2 iterations, 1em 2em base, 1.1 scale');
20 } 23 }
21 24
22 @include it('iro-responsive-modular-scale') { 25 @include it('responsive-modular-scale') {
23 @include assert('Single-stranded, fluid') { 26 @include assert('Single-stranded, fluid') {
24 $ms: ( 27 $ms: (
25 320px: (1rem, 1.1), 28 320px: (1rem, 1.1),
26 640px: (1rem, 1.2) 29 640px: (1rem, 1.2)
27 ); 30 );
28 31
29 $rem320px: iro-px-to-rem(320px); 32 $rem320px: functions.px-to-rem(320px);
30 $rem640px: iro-px-to-rem(640px); 33 $rem640px: functions.px-to-rem(640px);
31 $diff320px: iro-strip-unit($rem640px - $rem320px); 34 $diff320px: functions.strip-unit($rem640px - $rem320px);
32 35
33 @include output { 36 @include output {
34 h3 { 37 h3 {
35 @include iro-responsive-modular-scale(font-size, 0, $ms); 38 @include harmony.responsive-modular-scale(font-size, 0, $ms);
36 } 39 }
37 40
38 h2 { 41 h2 {
39 @include iro-responsive-modular-scale(font-size, 1, $ms); 42 @include harmony.responsive-modular-scale(font-size, 1, $ms);
40 } 43 }
41 44
42 h1 { 45 h1 {
43 @include iro-responsive-modular-scale(font-size, 2, $ms); 46 @include harmony.responsive-modular-scale(font-size, 2, $ms);
44 } 47 }
45 } 48 }
46 49
@@ -89,21 +92,21 @@
89 640px: (1rem, 1.2) 92 640px: (1rem, 1.2)
90 ); 93 );
91 94
92 $rem320px: iro-px-to-rem(320px); 95 $rem320px: functions.px-to-rem(320px);
93 $rem640px: iro-px-to-rem(640px); 96 $rem640px: functions.px-to-rem(640px);
94 $diff320px: iro-strip-unit($rem640px - $rem320px); 97 $diff320px: functions.strip-unit($rem640px - $rem320px);
95 98
96 @include output { 99 @include output {
97 h3 { 100 h3 {
98 @include iro-responsive-modular-scale(font-size, 0, $ms, false); 101 @include harmony.responsive-modular-scale(font-size, 0, $ms, false);
99 } 102 }
100 103
101 h2 { 104 h2 {
102 @include iro-responsive-modular-scale(font-size, 1, $ms, false); 105 @include harmony.responsive-modular-scale(font-size, 1, $ms, false);
103 } 106 }
104 107
105 h1 { 108 h1 {
106 @include iro-responsive-modular-scale(font-size, 2, $ms, false); 109 @include harmony.responsive-modular-scale(font-size, 2, $ms, false);
107 } 110 }
108 } 111 }
109 112
@@ -140,21 +143,21 @@
140 640px: (1rem 2rem, 1.2) 143 640px: (1rem 2rem, 1.2)
141 ); 144 );
142 145
143 $rem320px: iro-px-to-rem(320px); 146 $rem320px: functions.px-to-rem(320px);
144 $rem640px: iro-px-to-rem(640px); 147 $rem640px: functions.px-to-rem(640px);
145 $diff320px: iro-strip-unit($rem640px - $rem320px); 148 $diff320px: functions.strip-unit($rem640px - $rem320px);
146 149
147 @include output { 150 @include output {
148 h3 { 151 h3 {
149 @include iro-responsive-modular-scale(font-size, 0, $ms); 152 @include harmony.responsive-modular-scale(font-size, 0, $ms);
150 } 153 }
151 154
152 h2 { 155 h2 {
153 @include iro-responsive-modular-scale(font-size, 1, $ms); 156 @include harmony.responsive-modular-scale(font-size, 1, $ms);
154 } 157 }
155 158
156 h1 { 159 h1 {
157 @include iro-responsive-modular-scale(font-size, 2, $ms); 160 @include harmony.responsive-modular-scale(font-size, 2, $ms);
158 } 161 }
159 } 162 }
160 163
@@ -203,21 +206,21 @@
203 640px: (1rem 2rem, 1.2) 206 640px: (1rem 2rem, 1.2)
204 ); 207 );
205 208
206 $rem320px: iro-px-to-rem(320px); 209 $rem320px: functions.px-to-rem(320px);
207 $rem640px: iro-px-to-rem(640px); 210 $rem640px: functions.px-to-rem(640px);
208 $diff320px: iro-strip-unit($rem640px - $rem320px); 211 $diff320px: functions.strip-unit($rem640px - $rem320px);
209 212
210 @include output { 213 @include output {
211 h3 { 214 h3 {
212 @include iro-responsive-modular-scale(font-size, 0, $ms, false); 215 @include harmony.responsive-modular-scale(font-size, 0, $ms, false);
213 } 216 }
214 217
215 h2 { 218 h2 {
216 @include iro-responsive-modular-scale(font-size, 1, $ms, false); 219 @include harmony.responsive-modular-scale(font-size, 1, $ms, false);
217 } 220 }
218 221
219 h1 { 222 h1 {
220 @include iro-responsive-modular-scale(font-size, 2, $ms, false); 223 @include harmony.responsive-modular-scale(font-size, 2, $ms, false);
221 } 224 }
222 } 225 }
223 226
diff --git a/test/_props.scss b/test/_props.scss
index 021ed4c..71d88c5 100644
--- a/test/_props.scss
+++ b/test/_props.scss
@@ -1,5 +1,9 @@
1// sass-lint:disable empty-args 1// sass-lint:disable empty-args
2 2
3@use 'true' as *;
4@use '../src/functions';
5@use '../src/props';
6
3@include describe('Property trees') { 7@include describe('Property trees') {
4 @include it('Validate names') { 8 @include it('Validate names') {
5 $map-valid: ( 9 $map-valid: (
@@ -24,8 +28,8 @@
24 ) 28 )
25 ); 29 );
26 30
27 @include assert-equal(iro-props-validate($map-valid), true, 'Check valid map'); 31 @include assert-equal(props.validate($map-valid), true, 'Check valid map');
28 @include assert-equal(iro-props-validate($map-invalid), false, 'Check invalid map'); 32 @include assert-equal(props.validate($map-invalid), false, 'Check invalid map');
29 } 33 }
30 34
31 @include it('Save / Delete') { 35 @include it('Save / Delete') {
@@ -40,8 +44,8 @@
40 ) 44 )
41 ); 45 );
42 46
43 @include assert-equal(iro-props-store($map), null, 'Save default tree'); 47 @include assert-equal(props.store($map), null, 'Save default tree');
44 @include assert-equal(iro-props-clear(), null, 'Delete default tree'); 48 @include assert-equal(props.clear(), null, 'Delete default tree');
45 } 49 }
46 50
47 @include it('Read') { 51 @include it('Read') {
@@ -78,32 +82,32 @@
78 ) 82 )
79 ); 83 );
80 84
81 @include assert-equal(iro-props-store($map1), null, 'Save default tree'); 85 @include assert-equal(props.store($map1), null, 'Save default tree');
82 @include assert-equal(iro-props-store($map2, 'test'), null, 'Save "test" tree'); 86 @include assert-equal(props.store($map2, 'test'), null, 'Save "test" tree');
83 87
84 @include iro-props-namespace('ns') { 88 @include props.namespace('ns') {
85 @include assert-equal(iro-props-store($map3, 'namespaced'), null, 'Save "namespaced" tree'); 89 @include assert-equal(props.store($map3, 'namespaced'), null, 'Save "namespaced" tree');
86 } 90 }
87 91
88 @include assert-equal(iro-props-get-static(--background), map-get($map1, --background), 'Get --background in default'); 92 @include assert-equal(props.get-static(--background), map-get($map1, --background), 'Get --background in default');
89 @include assert-equal(iro-props-get-static(--buttons --primary --background), map-get(map-get(map-get($map1, --buttons), --primary), --background), 'Get --buttons --primary --background in default'); 93 @include assert-equal(props.get-static(--buttons --primary --background), map-get(map-get(map-get($map1, --buttons), --primary), --background), 'Get --buttons --primary --background in default');
90 @include assert-equal(iro-props-get-static(--box, $default: false), false, 'Get nonexistent in default'); 94 @include assert-equal(props.get-static(--box, $default: false), false, 'Get nonexistent in default');
91 95
92 @include assert-equal(iro-props-get-static(--background, 'test'), map-get($map2, --background), 'Get --background in "test"'); 96 @include assert-equal(props.get-static(--background, 'test'), map-get($map2, --background), 'Get --background in "test"');
93 @include assert-equal(iro-props-get-static(--buttons --primary --background, 'test'), map-get(map-get(map-get($map2, --buttons), --primary), --background), 'Get --buttons --primary --background in "test"'); 97 @include assert-equal(props.get-static(--buttons --primary --background, 'test'), map-get(map-get(map-get($map2, --buttons), --primary), --background), 'Get --buttons --primary --background in "test"');
94 @include assert-equal(iro-props-get-static(--box, 'test', $default: false), false, 'Get nonexistent in "test"'); 98 @include assert-equal(props.get-static(--box, 'test', $default: false), false, 'Get nonexistent in "test"');
95 99
96 @include assert-equal(iro-props-get-static(--background, 'namespaced', $default: false), false, 'Get --background in "namespaced"'); 100 @include assert-equal(props.get-static(--background, 'namespaced', $default: false), false, 'Get --background in "namespaced"');
97 @include assert-equal(iro-props-get-static(--ns --background, 'namespaced'), map-get($map3, --background), 'Get --ns --background in "namespaced"'); 101 @include assert-equal(props.get-static(--ns --background, 'namespaced'), map-get($map3, --background), 'Get --ns --background in "namespaced"');
98 @include iro-props-namespace('ns') { 102 @include props.namespace('ns') {
99 @include assert-equal(iro-props-get-static(--background, 'namespaced'), map-get($map3, --background), 'Get namespaced --background in "namespaced"'); 103 @include assert-equal(props.get-static(--background, 'namespaced'), map-get($map3, --background), 'Get namespaced --background in "namespaced"');
100 @include assert-equal(iro-props-get-static(--buttons --primary --background, 'namespaced'), map-get(map-get(map-get($map3, --buttons), --primary), --background), 'Get namespaced --buttons --primary --background in "namespaced"'); 104 @include assert-equal(props.get-static(--buttons --primary --background, 'namespaced'), map-get(map-get(map-get($map3, --buttons), --primary), --background), 'Get namespaced --buttons --primary --background in "namespaced"');
101 @include assert-equal(iro-props-get-static(--box, 'namespaced', $default: false), false, 'Get namespaced nonexistent in "namespaced"'); 105 @include assert-equal(props.get-static(--box, 'namespaced', $default: false), false, 'Get namespaced nonexistent in "namespaced"');
102 } 106 }
103 107
104 @include assert-equal(iro-props-clear(), null, 'Delete default tree'); 108 @include assert-equal(props.clear(), null, 'Delete default tree');
105 @include assert-equal(iro-props-clear('test'), null, 'Delete "test" tree'); 109 @include assert-equal(props.clear('test'), null, 'Delete "test" tree');
106 @include assert-equal(iro-props-clear('namespaced'), null, 'Delete "namespaced" tree'); 110 @include assert-equal(props.clear('namespaced'), null, 'Delete "namespaced" tree');
107 } 111 }
108 112
109 @include it('Overwrite') { 113 @include it('Overwrite') {
@@ -127,15 +131,15 @@
127 ) 131 )
128 ); 132 );
129 133
130 @include assert-equal(iro-props-store($map1), null, 'Save default tree'); 134 @include assert-equal(props.store($map1), null, 'Save default tree');
131 @include assert-equal(iro-props-store($map2, $merge: true), null, 'Overwrite default tree'); 135 @include assert-equal(props.store($map2, $merge: true), null, 'Overwrite default tree');
132 136
133 @include assert-equal(iro-props-get-static(), iro-map-merge-recursive($map1, $map2), 'After update, get whole map'); 137 @include assert-equal(props.get-static(), functions.map-merge-recursive($map1, $map2), 'After update, get whole map');
134 @include assert-equal(iro-props-get-static(--background), map-get($map2, --background), 'After update, get --background'); 138 @include assert-equal(props.get-static(--background), map-get($map2, --background), 'After update, get --background');
135 @include assert-equal(iro-props-get-static(--text), map-get($map2, --text), 'After update, get --text'); 139 @include assert-equal(props.get-static(--text), map-get($map2, --text), 'After update, get --text');
136 @include assert-equal(iro-props-get-static(--buttons --primary --text), map-get(map-get(map-get($map1, --buttons), --primary), --text), 'After update, get --buttons --primary --text'); 140 @include assert-equal(props.get-static(--buttons --primary --text), map-get(map-get(map-get($map1, --buttons), --primary), --text), 'After update, get --buttons --primary --text');
137 141
138 @include assert-equal(iro-props-clear(), null, 'Delete default tree'); 142 @include assert-equal(props.clear(), null, 'Delete default tree');
139 } 143 }
140 144
141 @include it('Native assignment') { 145 @include it('Native assignment') {
@@ -155,10 +159,10 @@
155 ); 159 );
156 160
157 @include assert('Simple') { 161 @include assert('Simple') {
158 @include iro-props-store($map); 162 @include props.store($map);
159 163
160 @include output { 164 @include output {
161 @include iro-props-assign; 165 @include props.assign;
162 } 166 }
163 167
164 @include expect { 168 @include expect {
@@ -170,14 +174,14 @@
170 --buttons--default--text: #{map-get(map-get(map-get($map, --buttons), --default), --text)}; 174 --buttons--default--text: #{map-get(map-get(map-get($map, --buttons), --default), --text)};
171 } 175 }
172 176
173 @include iro-props-clear; 177 @include props.clear;
174 } 178 }
175 179
176 @include assert('Filtered') { 180 @include assert('Filtered') {
177 @include iro-props-store($map); 181 @include props.store($map);
178 182
179 @include output { 183 @include output {
180 @include iro-props-assign($skip: --buttons); 184 @include props.assign($skip: --buttons);
181 } 185 }
182 186
183 @include expect { 187 @include expect {
@@ -185,16 +189,16 @@
185 --text: #{map-get($map, --text)}; 189 --text: #{map-get($map, --text)};
186 } 190 }
187 191
188 @include iro-props-clear; 192 @include props.clear;
189 } 193 }
190 194
191 @include assert('Namespaced') { 195 @include assert('Namespaced') {
192 @include iro-props-namespace('ns') { 196 @include props.namespace('ns') {
193 @include iro-props-store($map); 197 @include props.store($map);
194 } 198 }
195 199
196 @include output { 200 @include output {
197 @include iro-props-assign; 201 @include props.assign;
198 } 202 }
199 203
200 @include expect { 204 @include expect {
@@ -206,7 +210,7 @@
206 --ns--buttons--default--text: #{map-get(map-get(map-get($map, --buttons), --default), --text)}; 210 --ns--buttons--default--text: #{map-get(map-get(map-get($map, --buttons), --default), --text)};
207 } 211 }
208 212
209 @include iro-props-clear; 213 @include props.clear;
210 } 214 }
211 } 215 }
212 216
@@ -226,17 +230,17 @@
226 ) 230 )
227 ); 231 );
228 232
229 @include assert-equal(iro-props-store($map), null, 'Save default tree'); 233 @include assert-equal(props.store($map), null, 'Save default tree');
230 234
231 @include assert-equal(iro-props-get(--background), var(--background), 'Get --background'); 235 @include assert-equal(props.get(--background), var(--background), 'Get --background');
232 @include assert-equal(iro-props-get(--buttons --primary --text), var(--buttons--primary--text), 'Get --buttons --primary --text'); 236 @include assert-equal(props.get(--buttons --primary --text), var(--buttons--primary--text), 'Get --buttons --primary --text');
233 @include assert-equal(iro-props-get(--buttons --secondary --text, $default: false), var(--buttons--secondary--text, false), 'Get --buttons --secondary --text with default'); 237 @include assert-equal(props.get(--buttons --secondary --text, $default: false), var(--buttons--secondary--text, false), 'Get --buttons --secondary --text with default');
234 @include iro-props-namespace('buttons') { 238 @include props.namespace('buttons') {
235 @include assert-equal(iro-props-get(--primary --text), var(--buttons--primary--text), 'Get via namespace "buttons" --primary --text'); 239 @include assert-equal(props.get(--primary --text), var(--buttons--primary--text), 'Get via namespace "buttons" --primary --text');
236 @include assert-equal(iro-props-get(--secondary --text, $default: false), var(--buttons--secondary--text, false), 'Get via namespace "buttons" --secondary --text with default'); 240 @include assert-equal(props.get(--secondary --text, $default: false), var(--buttons--secondary--text, false), 'Get via namespace "buttons" --secondary --text with default');
237 } 241 }
238 242
239 @include assert-equal(iro-props-clear(), null, 'Delete default tree'); 243 @include assert-equal(props.clear(), null, 'Delete default tree');
240 } 244 }
241 245
242 @include it('References') { 246 @include it('References') {
@@ -255,25 +259,25 @@
255 --background: #eee, 259 --background: #eee,
256 --buttons: ( 260 --buttons: (
257 --primary: ( 261 --primary: (
258 --background: iro-props-ref($key: --background) 262 --background: props.ref($key: --background)
259 ), 263 ),
260 --default: iro-props-ref($key: --buttons --primary) 264 --default: props.ref($key: --buttons --primary)
261 ) 265 )
262 ); 266 );
263 267
264 @include assert-equal(iro-props-store($map1), null, 'Save default tree'); 268 @include assert-equal(props.store($map1), null, 'Save default tree');
265 @include assert-equal(iro-props-store($map2, 'second'), null, 'Save "second" tree'); 269 @include assert-equal(props.store($map2, 'second'), null, 'Save "second" tree');
266 270
267 @include assert-equal(iro-props-get-static(--buttons --primary --background, 'second'), map-get($map1, --background), 'Get referenced value'); 271 @include assert-equal(props.get-static(--buttons --primary --background, 'second'), map-get($map1, --background), 'Get referenced value');
268 @include assert-equal(iro-props-get(--buttons --primary --background, 'second'), var(--buttons--primary--background), 'Get referenced value, native'); 272 @include assert-equal(props.get(--buttons --primary --background, 'second'), var(--buttons--primary--background), 'Get referenced value, native');
269 273
270 @include assert-equal(iro-props-get-static(--buttons --default, 'second'), map-get(map-get($map1, --buttons), --primary), 'Get referenced subtree, whole'); 274 @include assert-equal(props.get-static(--buttons --default, 'second'), map-get(map-get($map1, --buttons), --primary), 'Get referenced subtree, whole');
271 @include assert-equal(iro-props-get-static(--buttons --default --background, 'second'), map-get(map-get(map-get($map1, --buttons), --primary), --background), 'Get referenced subtree, inner value'); 275 @include assert-equal(props.get-static(--buttons --default --background, 'second'), map-get(map-get(map-get($map1, --buttons), --primary), --background), 'Get referenced subtree, inner value');
272 @include assert-equal(iro-props-get(--buttons --default --background, 'second'), var(--buttons--default--background), 'Get referenced subtree, native'); 276 @include assert-equal(props.get(--buttons --default --background, 'second'), var(--buttons--default--background), 'Get referenced subtree, native');
273 277
274 @include assert('Native assignment') { 278 @include assert('Native assignment') {
275 @include output { 279 @include output {
276 @include iro-props-assign('second'); 280 @include props.assign('second');
277 } 281 }
278 282
279 @include expect { 283 @include expect {
@@ -284,7 +288,7 @@
284 } 288 }
285 } 289 }
286 290
287 @include assert-equal(iro-props-clear(), null, 'Delete default tree'); 291 @include assert-equal(props.clear(), null, 'Delete default tree');
288 @include assert-equal(iro-props-clear('second'), null, 'Delete "second" tree'); 292 @include assert-equal(props.clear('second'), null, 'Delete "second" tree');
289 } 293 }
290} 294}
diff --git a/test/_responsive.scss b/test/_responsive.scss
index 6dfe868..6780ae6 100644
--- a/test/_responsive.scss
+++ b/test/_responsive.scss
@@ -1,9 +1,13 @@
1@include describe('Responsive') { 1@use 'true' as *;
2 @include it('iro-responsive-fluid-calc') { 2@use '../src/functions';
3 $rem600px: iro-px-to-rem(600px); 3@use '../src/responsive';
4 $rem800px: iro-px-to-rem(800px);
5 4
6 @include assert-equal('#{iro-responsive-fluid-calc(2rem, 4rem, 600px, 800px)}', 'calc(2rem + 2 * (100vw - #{$rem600px}) / #{iro-strip-unit($rem800px - $rem600px)})', 'Responsive value from 2rem to 4rem over 600px to 800px'); 5@include describe('responsive') {
7 @include assert-equal('#{iro-responsive-fluid-calc(4px, 12px, 600px, 800px)}', 'calc(4px + 8 * (100vw - 600px) / 200)', 'Responsive value from 4px to 12px over 600px to 800px'); 6 @include it('fluid-calc') {
7 $rem600px: functions.px-to-rem(600px);
8 $rem800px: functions.px-to-rem(800px);
9
10 @include assert-equal('#{responsive.fluid-calc(2rem, 4rem, 600px, 800px)}', 'calc(2rem + 2 * (100vw - #{$rem600px}) / #{functions.strip-unit($rem800px - $rem600px)})', 'Responsive value from 2rem to 4rem over 600px to 800px');
11 @include assert-equal('#{responsive.fluid-calc(4px, 12px, 600px, 800px)}', 'calc(4px + 8 * (100vw - 600px) / 200)', 'Responsive value from 4px to 12px over 600px to 800px');
8 } 12 }
9} 13}
diff --git a/test/bem/_iro-bem-at-theme.scss b/test/bem/_at-theme.scss
index d2d0696..29a4eba 100644
--- a/test/bem/_iro-bem-at-theme.scss
+++ b/test/bem/_at-theme.scss
@@ -1,16 +1,19 @@
1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations 1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations
2 2
3@use 'true' as *;
4@use '../../src/bem';
5
3// 6//
4// Included test cases: 7// Included test cases:
5// - /// 1 /// - single theme 8// - /// 1 /// - single theme
6// - /// 2 /// - with sub-theme 9// - /// 2 /// - with sub-theme
7// 10//
8 11
9@include it('iro-bem-at-theme') { 12@include it('at-theme') {
10 @include assert('single theme') { /// 1 /// 13 @include assert('single theme') { /// 1 ///
11 @include output(false) { 14 @include output(false) {
12 @include iro-bem-block('something') { 15 @include bem.block('something') {
13 @include iro-bem-at-theme('theme') { 16 @include bem.at-theme('theme') {
14 font-size: 2em; 17 font-size: 2em;
15 } 18 }
16 } 19 }
@@ -27,12 +30,12 @@
27 30
28 @include assert('with sub-theme') { /// 2 /// 31 @include assert('with sub-theme') { /// 2 ///
29 @include output(false) { 32 @include output(false) {
30 @include iro-bem-block('something') { 33 @include bem.block('something') {
31 @include iro-bem-at-theme('theme') { 34 @include bem.at-theme('theme') {
32 font-size: 2em; 35 font-size: 2em;
33 } 36 }
34 37
35 @include iro-bem-at-theme('theme', 'subtheme') { 38 @include bem.at-theme('theme', 'subtheme') {
36 font-size: 3em; 39 font-size: 3em;
37 } 40 }
38 } 41 }
diff --git a/test/bem/_iro-bem-block.scss b/test/bem/_block.scss
index a93d803..fb3a545 100644
--- a/test/bem/_iro-bem-block.scss
+++ b/test/bem/_block.scss
@@ -1,5 +1,8 @@
1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations 1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations
2 2
3@use 'true' as *;
4@use '../../src/bem';
5
3// 6//
4// Included test cases: 7// Included test cases:
5// - /// 1 /// - without namespace 8// - /// 1 /// - without namespace
@@ -8,10 +11,10 @@
8// - /// 4 /// - within selector 11// - /// 4 /// - within selector
9// 12//
10 13
11@include it('iro-bem-block') { 14@include it('block') {
12 @include assert('without namespace') { /// 1 /// 15 @include assert('without namespace') { /// 1 ///
13 @include output(false) { 16 @include output(false) {
14 @include iro-bem-block('something') { 17 @include bem.block('something') {
15 font-size: 1em; 18 font-size: 1em;
16 } 19 }
17 } 20 }
@@ -23,17 +26,17 @@
23 } 26 }
24 } 27 }
25 28
26 @each $ns in map-keys($iro-bem-namespaces) { 29 @each $ns in map-keys(bem.$namespaces) {
27 @include assert('with namespace "#{$ns}"') { /// 2 /// 30 @include assert('with namespace "#{$ns}"') { /// 2 ///
28 @include output(false) { 31 @include output(false) {
29 @include iro-bem-block('something', $ns) { 32 @include bem.block('something', $ns) {
30 font-size: 1em; 33 font-size: 1em;
31 } 34 }
32 } 35 }
33 36
34 @include expect(false) { 37 @include expect(false) {
35 @if $ns != 'theme' { 38 @if $ns != 'theme' {
36 .#{map-get($iro-bem-namespaces, $ns)}-something { 39 .#{map-get(bem.$namespaces, $ns)}-something {
37 font-size: 1em; 40 font-size: 1em;
38 } 41 }
39 } @else { 42 } @else {
@@ -49,9 +52,9 @@
49 52
50 @include assert('nested') { /// 3 /// 53 @include assert('nested') { /// 3 ///
51 @include output(false) { 54 @include output(false) {
52 @include iro-bem-theme('theme') { 55 @include bem.theme('theme') {
53 @include iro-bem-theme('subtheme') { 56 @include bem.theme('subtheme') {
54 @include iro-bem-block('something') { 57 @include bem.block('something') {
55 font-size: 2em; 58 font-size: 2em;
56 } 59 }
57 } 60 }
@@ -70,7 +73,7 @@
70 @include assert('within selector') { /// 4 /// 73 @include assert('within selector') { /// 4 ///
71 @include output(false) { 74 @include output(false) {
72 .sel { 75 .sel {
73 @include iro-bem-block('something') { 76 @include bem.block('something') {
74 font-size: 2em; 77 font-size: 2em;
75 } 78 }
76 } 79 }
diff --git a/test/bem/_iro-bem-composed-of.scss b/test/bem/_composed-of.scss
index e724eb8..fcbf2c4 100644
--- a/test/bem/_iro-bem-composed-of.scss
+++ b/test/bem/_composed-of.scss
@@ -1,5 +1,8 @@
1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations 1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations
2 2
3@use 'true' as *;
4@use '../../src/bem';
5
3// 6//
4// Included test cases: 7// Included test cases:
5// - /// 1 /// - without namespace, single 8// - /// 1 /// - without namespace, single
@@ -8,15 +11,15 @@
8// - /// 4 /// - with namespace, multiple 11// - /// 4 /// - with namespace, multiple
9// 12//
10 13
11@include it('iro-bem-composed-of') { 14@include it('composed-of') {
12 @include assert('without namespace, single') { /// 1 /// 15 @include assert('without namespace, single') { /// 1 ///
13 @include output(false) { 16 @include output(false) {
14 @include iro-bem-block('something') { 17 @include bem.block('something') {
15 font-size: 1em; 18 font-size: 1em;
16 } 19 }
17 20
18 @include iro-bem-block('another') { 21 @include bem.block('another') {
19 @include iro-bem-composed-of('something'); 22 @include bem.composed-of('something');
20 23
21 font-size: 2em; 24 font-size: 2em;
22 } 25 }
@@ -33,15 +36,15 @@
33 } 36 }
34 } 37 }
35 38
36 @each $ns in map-keys($iro-bem-namespaces) { 39 @each $ns in map-keys(bem.$namespaces) {
37 @include assert('with namespace "#{$ns}", single') { /// 2 /// 40 @include assert('with namespace "#{$ns}", single') { /// 2 ///
38 @include output(false) { 41 @include output(false) {
39 @include iro-bem-block('something', $ns) { 42 @include bem.block('something', $ns) {
40 font-size: 1em; 43 font-size: 1em;
41 } 44 }
42 45
43 @include iro-bem-block('another') { 46 @include bem.block('another') {
44 @include iro-bem-composed-of('something' $ns); 47 @include bem.composed-of('something' $ns);
45 48
46 font-size: 2em; 49 font-size: 2em;
47 } 50 }
@@ -49,7 +52,7 @@
49 52
50 @include expect(false) { 53 @include expect(false) {
51 @if $ns != 'theme' { 54 @if $ns != 'theme' {
52 .#{map-get($iro-bem-namespaces, $ns)}-something { 55 .#{map-get(bem.$namespaces, $ns)}-something {
53 font-size: 1em; 56 font-size: 1em;
54 } 57 }
55 } @else { 58 } @else {
@@ -69,16 +72,16 @@
69 72
70 @include assert('without namespace, multiple') { /// 3 /// 73 @include assert('without namespace, multiple') { /// 3 ///
71 @include output(false) { 74 @include output(false) {
72 @include iro-bem-block('something') { 75 @include bem.block('something') {
73 font-size: 1em; 76 font-size: 1em;
74 } 77 }
75 78
76 @include iro-bem-block('somethingElse') { 79 @include bem.block('somethingElse') {
77 font-size: 1em; 80 font-size: 1em;
78 } 81 }
79 82
80 @include iro-bem-block('another') { 83 @include bem.block('another') {
81 @include iro-bem-composed-of('something', 'somethingElse'); 84 @include bem.composed-of('something', 'somethingElse');
82 85
83 font-size: 2em; 86 font-size: 2em;
84 } 87 }
@@ -99,19 +102,19 @@
99 } 102 }
100 } 103 }
101 104
102 @each $ns in map-keys($iro-bem-namespaces) { 105 @each $ns in map-keys(bem.$namespaces) {
103 @include assert('with namespace "#{$ns}", multiple') { /// 4 /// 106 @include assert('with namespace "#{$ns}", multiple') { /// 4 ///
104 @include output(false) { 107 @include output(false) {
105 @include iro-bem-block('something', $ns) { 108 @include bem.block('something', $ns) {
106 font-size: 1em; 109 font-size: 1em;
107 } 110 }
108 111
109 @include iro-bem-block('somethingElse', $ns) { 112 @include bem.block('somethingElse', $ns) {
110 font-size: 1em; 113 font-size: 1em;
111 } 114 }
112 115
113 @include iro-bem-block('another') { 116 @include bem.block('another') {
114 @include iro-bem-composed-of('something' $ns, 'somethingElse' $ns); 117 @include bem.composed-of('something' $ns, 'somethingElse' $ns);
115 118
116 font-size: 2em; 119 font-size: 2em;
117 } 120 }
@@ -119,11 +122,11 @@
119 122
120 @include expect(false) { 123 @include expect(false) {
121 @if $ns != 'theme' { 124 @if $ns != 'theme' {
122 .#{map-get($iro-bem-namespaces, $ns)}-something { 125 .#{map-get(bem.$namespaces, $ns)}-something {
123 font-size: 1em; 126 font-size: 1em;
124 } 127 }
125 128
126 .#{map-get($iro-bem-namespaces, $ns)}-somethingElse { 129 .#{map-get(bem.$namespaces, $ns)}-somethingElse {
127 font-size: 1em; 130 font-size: 1em;
128 } 131 }
129 } @else { 132 } @else {
diff --git a/test/bem/_iro-bem-element.scss b/test/bem/_element.scss
index f69f133..c8839de 100644
--- a/test/bem/_iro-bem-element.scss
+++ b/test/bem/_element.scss
@@ -1,5 +1,8 @@
1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations 1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations
2 2
3@use 'true' as *;
4@use '../../src/bem';
5
3// 6//
4// Included test cases: 7// Included test cases:
5// - /// 1 /// - single element 8// - /// 1 /// - single element
@@ -18,11 +21,11 @@
18// - /// 14 /// - single element, in at-theme 21// - /// 14 /// - single element, in at-theme
19// 22//
20 23
21@include it('iro-bem-element') { 24@include it('element') {
22 @include assert('single element') { /// 1 /// 25 @include assert('single element') { /// 1 ///
23 @include output { 26 @include output {
24 @include iro-bem-block('something') { 27 @include bem.block('something') {
25 @include iro-bem-element('child') { 28 @include bem.elem('child') {
26 font-size: 2em; 29 font-size: 2em;
27 } 30 }
28 } 31 }
@@ -37,15 +40,15 @@
37 40
38 @include assert('single element, manual selector in-between') { /// 2 /// 41 @include assert('single element, manual selector in-between') { /// 2 ///
39 @include output(false) { 42 @include output(false) {
40 @include iro-bem-block('something') { 43 @include bem.block('something') {
41 &:hover { 44 &:hover {
42 @include iro-bem-element('child1') { 45 @include bem.elem('child1') {
43 font-size: 2em; 46 font-size: 2em;
44 } 47 }
45 } 48 }
46 49
47 .test & { 50 .test & {
48 @include iro-bem-element('child2') { 51 @include bem.elem('child2') {
49 font-size: 2em; 52 font-size: 2em;
50 } 53 }
51 } 54 }
@@ -65,9 +68,9 @@
65 68
66 @include assert('single element, modifier in-between') { /// 3 /// 69 @include assert('single element, modifier in-between') { /// 3 ///
67 @include output { 70 @include output {
68 @include iro-bem-block('something') { 71 @include bem.block('something') {
69 @include iro-bem-modifier('mod') { 72 @include bem.modifier('mod') {
70 @include iro-bem-element('child') { 73 @include bem.elem('child') {
71 font-size: 2em; 74 font-size: 2em;
72 } 75 }
73 } 76 }
@@ -83,11 +86,11 @@
83 86
84 @include assert('single element, nested') { /// 4 /// 87 @include assert('single element, nested') { /// 4 ///
85 @include output { 88 @include output {
86 @include iro-bem-block('something') { 89 @include bem.block('something') {
87 @include iro-bem-element('child') { 90 @include bem.elem('child') {
88 font-size: 2em; 91 font-size: 2em;
89 92
90 @include iro-bem-element('subchild') { 93 @include bem.elem('subchild') {
91 font-size: 3em; 94 font-size: 3em;
92 } 95 }
93 } 96 }
@@ -107,38 +110,38 @@
107 110
108 @include assert('single element, nested, manual selector in-between') { /// 5 /// 111 @include assert('single element, nested, manual selector in-between') { /// 5 ///
109 @include output(false) { 112 @include output(false) {
110 @include iro-bem-block('something') { 113 @include bem.block('something') {
111 &:hover { 114 &:hover {
112 @include iro-bem-element('child1') { 115 @include bem.elem('child1') {
113 font-size: 2em; 116 font-size: 2em;
114 117
115 @include iro-bem-element('subchild1') { 118 @include bem.elem('subchild1') {
116 font-size: 3em; 119 font-size: 3em;
117 } 120 }
118 } 121 }
119 } 122 }
120 123
121 .test & { 124 .test & {
122 @include iro-bem-element('child2') { 125 @include bem.elem('child2') {
123 font-size: 2em; 126 font-size: 2em;
124 127
125 @include iro-bem-element('subchild2') { 128 @include bem.elem('subchild2') {
126 font-size: 3em; 129 font-size: 3em;
127 } 130 }
128 } 131 }
129 } 132 }
130 133
131 @include iro-bem-element('child3') { 134 @include bem.elem('child3') {
132 font-size: 2em; 135 font-size: 2em;
133 136
134 &:hover { 137 &:hover {
135 @include iro-bem-element('subchild3') { 138 @include bem.elem('subchild3') {
136 font-size: 3em; 139 font-size: 3em;
137 } 140 }
138 } 141 }
139 142
140 .test & { 143 .test & {
141 @include iro-bem-element('subchild4') { 144 @include bem.elem('subchild4') {
142 font-size: 3em; 145 font-size: 3em;
143 } 146 }
144 } 147 }
@@ -179,22 +182,22 @@
179 182
180 @include assert('single element, nested, modifier in-between') { /// 6 /// 183 @include assert('single element, nested, modifier in-between') { /// 6 ///
181 @include output { 184 @include output {
182 @include iro-bem-block('something') { 185 @include bem.block('something') {
183 @include iro-bem-modifier('mod') { 186 @include bem.modifier('mod') {
184 @include iro-bem-element('child') { 187 @include bem.elem('child') {
185 font-size: 2em; 188 font-size: 2em;
186 189
187 @include iro-bem-element('subchild') { 190 @include bem.elem('subchild') {
188 font-size: 3em; 191 font-size: 3em;
189 } 192 }
190 } 193 }
191 } 194 }
192 195
193 @include iro-bem-element('child') { 196 @include bem.elem('child') {
194 font-size: 2em; 197 font-size: 2em;
195 198
196 @include iro-bem-modifier('mod') { 199 @include bem.modifier('mod') {
197 @include iro-bem-element('subchild') { 200 @include bem.elem('subchild') {
198 font-size: 3em; 201 font-size: 3em;
199 } 202 }
200 } 203 }
@@ -223,9 +226,9 @@
223 226
224 @include assert('single element, in at-theme') { /// 7 /// 227 @include assert('single element, in at-theme') { /// 7 ///
225 @include output(false) { 228 @include output(false) {
226 @include iro-bem-block('something') { 229 @include bem.block('something') {
227 @include iro-bem-at-theme('dark') { 230 @include bem.at-theme('dark') {
228 @include iro-bem-element('child') { 231 @include bem.elem('child') {
229 font-size: 2em; 232 font-size: 2em;
230 } 233 }
231 } 234 }
@@ -243,8 +246,8 @@
243 246
244 @include assert('multiple elements') { /// 8 /// 247 @include assert('multiple elements') { /// 8 ///
245 @include output { 248 @include output {
246 @include iro-bem-block('something') { 249 @include bem.block('something') {
247 @include iro-bem-element('child1', 'child2') { 250 @include bem.elem('child1', 'child2') {
248 font-size: 2em; 251 font-size: 2em;
249 } 252 }
250 } 253 }
@@ -260,15 +263,15 @@
260 263
261 @include assert('multiple elements, manual selector in-between') { /// 9 /// 264 @include assert('multiple elements, manual selector in-between') { /// 9 ///
262 @include output(false) { 265 @include output(false) {
263 @include iro-bem-block('something') { 266 @include bem.block('something') {
264 &:hover { 267 &:hover {
265 @include iro-bem-element('child1', 'child2') { 268 @include bem.elem('child1', 'child2') {
266 font-size: 2em; 269 font-size: 2em;
267 } 270 }
268 } 271 }
269 272
270 .test & { 273 .test & {
271 @include iro-bem-element('child3', 'child4') { 274 @include bem.elem('child3', 'child4') {
272 font-size: 2em; 275 font-size: 2em;
273 } 276 }
274 } 277 }
@@ -290,9 +293,9 @@
290 293
291 @include assert('multiple elements, modifier in-between') { /// 10 /// 294 @include assert('multiple elements, modifier in-between') { /// 10 ///
292 @include output { 295 @include output {
293 @include iro-bem-block('something') { 296 @include bem.block('something') {
294 @include iro-bem-modifier('mod') { 297 @include bem.modifier('mod') {
295 @include iro-bem-element('child1', 'child2') { 298 @include bem.elem('child1', 'child2') {
296 font-size: 2em; 299 font-size: 2em;
297 } 300 }
298 } 301 }
@@ -309,19 +312,19 @@
309 312
310 @include assert('multiple elements, nested') { /// 11 /// 313 @include assert('multiple elements, nested') { /// 11 ///
311 @include output { 314 @include output {
312 @include iro-bem-block('something') { 315 @include bem.block('something') {
313 @include iro-bem-element('child1', 'child2') { 316 @include bem.elem('child1', 'child2') {
314 font-size: 2em; 317 font-size: 2em;
315 318
316 @include iro-bem-element('subchild1') { 319 @include bem.elem('subchild1') {
317 font-size: 3em; 320 font-size: 3em;
318 } 321 }
319 } 322 }
320 323
321 @include iro-bem-element('child3') { 324 @include bem.elem('child3') {
322 font-size: 2em; 325 font-size: 2em;
323 326
324 @include iro-bem-element('subchild2', 'subchild3') { 327 @include bem.elem('subchild2', 'subchild3') {
325 font-size: 3em; 328 font-size: 3em;
326 } 329 }
327 } 330 }
@@ -352,34 +355,34 @@
352 355
353 @include assert('multiple elements, nested, manual selector in-between') { /// 12 /// 356 @include assert('multiple elements, nested, manual selector in-between') { /// 12 ///
354 @include output(false) { 357 @include output(false) {
355 @include iro-bem-block('something') { 358 @include bem.block('something') {
356 @include iro-bem-element('child1', 'child2') { 359 @include bem.elem('child1', 'child2') {
357 font-size: 2em; 360 font-size: 2em;
358 361
359 &:hover { 362 &:hover {
360 @include iro-bem-element('subchild1') { 363 @include bem.elem('subchild1') {
361 font-size: 3em; 364 font-size: 3em;
362 } 365 }
363 } 366 }
364 367
365 .test & { 368 .test & {
366 @include iro-bem-element('subchild2') { 369 @include bem.elem('subchild2') {
367 font-size: 3em; 370 font-size: 3em;
368 } 371 }
369 } 372 }
370 } 373 }
371 374
372 @include iro-bem-element('child3') { 375 @include bem.elem('child3') {
373 font-size: 2em; 376 font-size: 2em;
374 377
375 &:hover { 378 &:hover {
376 @include iro-bem-element('subchild3', 'subchild4') { 379 @include bem.elem('subchild3', 'subchild4') {
377 font-size: 3em; 380 font-size: 3em;
378 } 381 }
379 } 382 }
380 383
381 .test & { 384 .test & {
382 @include iro-bem-element('subchild5', 'subchild6') { 385 @include bem.elem('subchild5', 'subchild6') {
383 font-size: 3em; 386 font-size: 3em;
384 } 387 }
385 } 388 }
@@ -421,22 +424,22 @@
421 424
422 @include assert('multiple elements, nested, modifier in-between') { /// 13 /// 425 @include assert('multiple elements, nested, modifier in-between') { /// 13 ///
423 @include output { 426 @include output {
424 @include iro-bem-block('something') { 427 @include bem.block('something') {
425 @include iro-bem-element('child1', 'child2') { 428 @include bem.elem('child1', 'child2') {
426 font-size: 2em; 429 font-size: 2em;
427 430
428 @include iro-bem-modifier('mod') { 431 @include bem.modifier('mod') {
429 @include iro-bem-element('subchild1') { 432 @include bem.elem('subchild1') {
430 font-size: 3em; 433 font-size: 3em;
431 } 434 }
432 } 435 }
433 } 436 }
434 437
435 @include iro-bem-element('child3') { 438 @include bem.elem('child3') {
436 font-size: 2em; 439 font-size: 2em;
437 440
438 @include iro-bem-modifier('mod') { 441 @include bem.modifier('mod') {
439 @include iro-bem-element('subchild2', 'subchild3') { 442 @include bem.elem('subchild2', 'subchild3') {
440 font-size: 3em; 443 font-size: 3em;
441 } 444 }
442 } 445 }
@@ -468,9 +471,9 @@
468 471
469 @include assert('multiple elements, in at-theme') { /// 14 /// 472 @include assert('multiple elements, in at-theme') { /// 14 ///
470 @include output(false) { 473 @include output(false) {
471 @include iro-bem-block('something') { 474 @include bem.block('something') {
472 @include iro-bem-at-theme('dark') { 475 @include bem.at-theme('dark') {
473 @include iro-bem-element('child1', 'child2') { 476 @include bem.elem('child1', 'child2') {
474 font-size: 2em; 477 font-size: 2em;
475 } 478 }
476 } 479 }
diff --git a/test/bem/_examples.scss b/test/bem/_examples.scss
index 243ee35..33deca0 100644
--- a/test/bem/_examples.scss
+++ b/test/bem/_examples.scss
@@ -1,5 +1,8 @@
1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations no-empty-rulesets 1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations no-empty-rulesets
2 2
3@use 'true' as *;
4@use '../../src/bem';
5
3// 6//
4// Included test cases: 7// Included test cases:
5// - /// 1 /// - Media object 8// - /// 1 /// - Media object
@@ -10,30 +13,30 @@
10@include it('Examples') { 13@include it('Examples') {
11 @include assert('Media object') { /// 1 /// 14 @include assert('Media object') { /// 1 ///
12 @include output { 15 @include output {
13 @include iro-bem-object('media') { 16 @include bem.object('media') {
14 display: flex; 17 display: flex;
15 align-items: flex-start; 18 align-items: flex-start;
16 justify-content: flex-start; 19 justify-content: flex-start;
17 20
18 @include iro-bem-element('image') { 21 @include bem.elem('image') {
19 display: block; 22 display: block;
20 flex: 0 0 auto; 23 flex: 0 0 auto;
21 order: 1; 24 order: 1;
22 overflow: hidden; 25 overflow: hidden;
23 } 26 }
24 27
25 @include iro-bem-element('body') { 28 @include bem.elem('body') {
26 order: 2; 29 order: 2;
27 } 30 }
28 31
29 @include iro-bem-modifier('rtl') { 32 @include bem.modifier('rtl') {
30 justify-content: flex-end; 33 justify-content: flex-end;
31 34
32 @include iro-bem-element('image') { 35 @include bem.elem('image') {
33 order: 2; 36 order: 2;
34 } 37 }
35 38
36 @include iro-bem-element('body') { 39 @include bem.elem('body') {
37 order: 1; 40 order: 1;
38 } 41 }
39 } 42 }
@@ -74,30 +77,30 @@
74 77
75 @include assert('Tabs') { /// 2 /// 78 @include assert('Tabs') { /// 2 ///
76 @include output { 79 @include output {
77 @include iro-bem-component('tabs') { 80 @include bem.component('tabs') {
78 position: relative; 81 position: relative;
79 82
80 @include iro-bem-element('tab') { 83 @include bem.elem('tab') {
81 float: left; 84 float: left;
82 } 85 }
83 86
84 @include iro-bem-element('tabRadio') { 87 @include bem.elem('tabRadio') {
85 position: absolute; 88 position: absolute;
86 top: -9999px; 89 top: -9999px;
87 left: -9999px; 90 left: -9999px;
88 91
89 &:checked { 92 &:checked {
90 @include iro-bem-sibling-element('tabLabel') { 93 @include bem.sibling-elem('tabLabel') {
91 font-weight: bold; 94 font-weight: bold;
92 } 95 }
93 96
94 @include iro-bem-sibling-element('tabContent') { 97 @include bem.sibling-elem('tabContent') {
95 display: block; 98 display: block;
96 } 99 }
97 } 100 }
98 } 101 }
99 102
100 @include iro-bem-element('tabLabel') { 103 @include bem.elem('tabLabel') {
101 cursor: pointer; 104 cursor: pointer;
102 105
103 &:hover, 106 &:hover,
@@ -106,7 +109,7 @@
106 } 109 }
107 } 110 }
108 111
109 @include iro-bem-element('tabContent') { 112 @include bem.elem('tabContent') {
110 position: absolute; 113 position: absolute;
111 left: 0; 114 left: 0;
112 display: none; 115 display: none;
@@ -156,28 +159,28 @@
156 159
157 @include assert('Accordion') { /// 3 /// 160 @include assert('Accordion') { /// 3 ///
158 @include output { 161 @include output {
159 @include iro-bem-component('accordion') { 162 @include bem.component('accordion') {
160 @include iro-bem-element('section') { 163 @include bem.elem('section') {
161 // nothing to do 164 // nothing to do
162 } 165 }
163 166
164 @include iro-bem-element('sectionCheckbox') { 167 @include bem.elem('sectionCheckbox') {
165 position: absolute; 168 position: absolute;
166 top: -9999px; 169 top: -9999px;
167 left: -9999px; 170 left: -9999px;
168 171
169 &:checked { 172 &:checked {
170 @include iro-bem-sibling-element('sectionLabel') { 173 @include bem.sibling-elem('sectionLabel') {
171 font-weight: bold; 174 font-weight: bold;
172 } 175 }
173 176
174 @include iro-bem-sibling-element('sectionContent') { 177 @include bem.sibling-elem('sectionContent') {
175 display: block; 178 display: block;
176 } 179 }
177 } 180 }
178 } 181 }
179 182
180 @include iro-bem-element('sectionLabel') { 183 @include bem.elem('sectionLabel') {
181 cursor: pointer; 184 cursor: pointer;
182 185
183 &:hover, 186 &:hover,
@@ -186,7 +189,7 @@
186 } 189 }
187 } 190 }
188 191
189 @include iro-bem-element('sectionContent') { 192 @include bem.elem('sectionContent') {
190 display: none; 193 display: none;
191 } 194 }
192 } 195 }
diff --git a/test/bem/_iro-bem-modifier.scss b/test/bem/_modifier.scss
index 60e2fe4..934efa3 100644
--- a/test/bem/_iro-bem-modifier.scss
+++ b/test/bem/_modifier.scss
@@ -1,5 +1,8 @@
1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations 1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations
2 2
3@use 'true' as *;
4@use '../../src/bem';
5
3// 6//
4// Included test cases: 7// Included test cases:
5// - /// 1 /// - block modifier 8// - /// 1 /// - block modifier
@@ -19,14 +22,14 @@
19// - /// 15 /// - block and element modifiers, multiple elements 22// - /// 15 /// - block and element modifiers, multiple elements
20// 23//
21 24
22@include it('iro-bem-modifier') { 25@include it('modifier') {
23 @include assert('block modifier') { /// 1 /// 26 @include assert('block modifier') { /// 1 ///
24 @include output { 27 @include output {
25 @include iro-bem-block('something') { 28 @include bem.block('something') {
26 @include iro-bem-modifier('mod') { 29 @include bem.modifier('mod') {
27 font-size: 1.5em; 30 font-size: 1.5em;
28 31
29 @include iro-bem-modifier('submod') { 32 @include bem.modifier('submod') {
30 font-size: 1.75em; 33 font-size: 1.75em;
31 } 34 }
32 } 35 }
@@ -46,12 +49,12 @@
46 49
47 @include assert('block modifier, in at-theme') { /// 2 /// 50 @include assert('block modifier, in at-theme') { /// 2 ///
48 @include output(false) { 51 @include output(false) {
49 @include iro-bem-block('something') { 52 @include bem.block('something') {
50 @include iro-bem-at-theme('dark') { 53 @include bem.at-theme('dark') {
51 @include iro-bem-modifier('mod') { 54 @include bem.modifier('mod') {
52 font-size: 1.5em; 55 font-size: 1.5em;
53 56
54 @include iro-bem-modifier('submod') { 57 @include bem.modifier('submod') {
55 font-size: 1.75em; 58 font-size: 1.75em;
56 } 59 }
57 } 60 }
@@ -76,12 +79,12 @@
76 79
77 @include assert('element modifier, single element') { /// 3 /// 80 @include assert('element modifier, single element') { /// 3 ///
78 @include output { 81 @include output {
79 @include iro-bem-block('something') { 82 @include bem.block('something') {
80 @include iro-bem-element('child') { 83 @include bem.elem('child') {
81 @include iro-bem-modifier('mod') { 84 @include bem.modifier('mod') {
82 font-size: 2.5em; 85 font-size: 2.5em;
83 86
84 @include iro-bem-modifier('submod') { 87 @include bem.modifier('submod') {
85 font-size: 2.75em; 88 font-size: 2.75em;
86 } 89 }
87 } 90 }
@@ -102,12 +105,12 @@
102 105
103 @include assert('element modifier, multiple elements') { /// 4 /// 106 @include assert('element modifier, multiple elements') { /// 4 ///
104 @include output { 107 @include output {
105 @include iro-bem-block('something') { 108 @include bem.block('something') {
106 @include iro-bem-element('child1', 'child2') { 109 @include bem.elem('child1', 'child2') {
107 @include iro-bem-modifier('mod') { 110 @include bem.modifier('mod') {
108 font-size: 2.5em; 111 font-size: 2.5em;
109 112
110 @include iro-bem-modifier('submod') { 113 @include bem.modifier('submod') {
111 font-size: 2.75em; 114 font-size: 2.75em;
112 } 115 }
113 } 116 }
@@ -130,13 +133,13 @@
130 133
131 @include assert('element modifier, single related element') { /// 5 /// 134 @include assert('element modifier, single related element') { /// 5 ///
132 @include output { 135 @include output {
133 @include iro-bem-block('something') { 136 @include bem.block('something') {
134 @include iro-bem-element('child1') { 137 @include bem.elem('child1') {
135 @include iro-bem-next-element('child2') { 138 @include bem.next-elem('child2') {
136 @include iro-bem-modifier('mod') { 139 @include bem.modifier('mod') {
137 font-size: 2.5em; 140 font-size: 2.5em;
138 141
139 @include iro-bem-modifier('submod') { 142 @include bem.modifier('submod') {
140 font-size: 2.75em; 143 font-size: 2.75em;
141 } 144 }
142 } 145 }
@@ -158,13 +161,13 @@
158 161
159 @include assert('element modifier, multiple related elements') { /// 6 /// 162 @include assert('element modifier, multiple related elements') { /// 6 ///
160 @include output { 163 @include output {
161 @include iro-bem-block('something') { 164 @include bem.block('something') {
162 @include iro-bem-element('child1') { 165 @include bem.elem('child1') {
163 @include iro-bem-next-element('child2', 'child3') { 166 @include bem.next-elem('child2', 'child3') {
164 @include iro-bem-modifier('mod') { 167 @include bem.modifier('mod') {
165 font-size: 2.5em; 168 font-size: 2.5em;
166 169
167 @include iro-bem-modifier('submod') { 170 @include bem.modifier('submod') {
168 font-size: 2.75em; 171 font-size: 2.75em;
169 } 172 }
170 } 173 }
@@ -188,13 +191,13 @@
188 191
189 @include assert('element modifier, single element, manual selector before') { /// 7 /// 192 @include assert('element modifier, single element, manual selector before') { /// 7 ///
190 @include output(false) { 193 @include output(false) {
191 @include iro-bem-block('something') { 194 @include bem.block('something') {
192 &:hover { 195 &:hover {
193 @include iro-bem-element('child1') { 196 @include bem.elem('child1') {
194 @include iro-bem-modifier('mod') { 197 @include bem.modifier('mod') {
195 font-size: 2.5em; 198 font-size: 2.5em;
196 199
197 @include iro-bem-modifier('submod') { 200 @include bem.modifier('submod') {
198 font-size: 2.75em; 201 font-size: 2.75em;
199 } 202 }
200 } 203 }
@@ -202,11 +205,11 @@
202 } 205 }
203 206
204 .test & { 207 .test & {
205 @include iro-bem-element('child2') { 208 @include bem.elem('child2') {
206 @include iro-bem-modifier('mod') { 209 @include bem.modifier('mod') {
207 font-size: 2.5em; 210 font-size: 2.5em;
208 211
209 @include iro-bem-modifier('submod') { 212 @include bem.modifier('submod') {
210 font-size: 2.75em; 213 font-size: 2.75em;
211 } 214 }
212 } 215 }
@@ -236,13 +239,13 @@
236 239
237 @include assert('element modifier, multiple elements, manual selector before') { /// 8 /// 240 @include assert('element modifier, multiple elements, manual selector before') { /// 8 ///
238 @include output(false) { 241 @include output(false) {
239 @include iro-bem-block('something') { 242 @include bem.block('something') {
240 &:hover { 243 &:hover {
241 @include iro-bem-element('child1', 'child2') { 244 @include bem.elem('child1', 'child2') {
242 @include iro-bem-modifier('mod') { 245 @include bem.modifier('mod') {
243 font-size: 2.5em; 246 font-size: 2.5em;
244 247
245 @include iro-bem-modifier('submod') { 248 @include bem.modifier('submod') {
246 font-size: 2.75em; 249 font-size: 2.75em;
247 } 250 }
248 } 251 }
@@ -250,11 +253,11 @@
250 } 253 }
251 254
252 .test & { 255 .test & {
253 @include iro-bem-element('child3', 'child4') { 256 @include bem.elem('child3', 'child4') {
254 @include iro-bem-modifier('mod') { 257 @include bem.modifier('mod') {
255 font-size: 2.5em; 258 font-size: 2.5em;
256 259
257 @include iro-bem-modifier('submod') { 260 @include bem.modifier('submod') {
258 font-size: 2.75em; 261 font-size: 2.75em;
259 } 262 }
260 } 263 }
@@ -288,14 +291,14 @@
288 291
289 @include assert('element modifier, single related element, manual selector before') { /// 9 /// 292 @include assert('element modifier, single related element, manual selector before') { /// 9 ///
290 @include output(false) { 293 @include output(false) {
291 @include iro-bem-block('something') { 294 @include bem.block('something') {
292 &:hover { 295 &:hover {
293 @include iro-bem-element('child1') { 296 @include bem.elem('child1') {
294 @include iro-bem-next-element('child2') { 297 @include bem.next-elem('child2') {
295 @include iro-bem-modifier('mod1') { 298 @include bem.modifier('mod1') {
296 font-size: 2.5em; 299 font-size: 2.5em;
297 300
298 @include iro-bem-modifier('submod1') { 301 @include bem.modifier('submod1') {
299 font-size: 2.75em; 302 font-size: 2.75em;
300 } 303 }
301 } 304 }
@@ -304,12 +307,12 @@
304 } 307 }
305 308
306 .test & { 309 .test & {
307 @include iro-bem-element('child3') { 310 @include bem.elem('child3') {
308 @include iro-bem-next-element('child4') { 311 @include bem.next-elem('child4') {
309 @include iro-bem-modifier('mod1') { 312 @include bem.modifier('mod1') {
310 font-size: 2.5em; 313 font-size: 2.5em;
311 314
312 @include iro-bem-modifier('submod1') { 315 @include bem.modifier('submod1') {
313 font-size: 2.75em; 316 font-size: 2.75em;
314 } 317 }
315 } 318 }
@@ -317,13 +320,13 @@
317 } 320 }
318 } 321 }
319 322
320 @include iro-bem-element('child5') { 323 @include bem.elem('child5') {
321 &:hover { 324 &:hover {
322 @include iro-bem-next-element('child6') { 325 @include bem.next-elem('child6') {
323 @include iro-bem-modifier('mod2') { 326 @include bem.modifier('mod2') {
324 font-size: 2.5em; 327 font-size: 2.5em;
325 328
326 @include iro-bem-modifier('submod2') { 329 @include bem.modifier('submod2') {
327 font-size: 2.75em; 330 font-size: 2.75em;
328 } 331 }
329 } 332 }
@@ -331,11 +334,11 @@
331 } 334 }
332 335
333 .test & { 336 .test & {
334 @include iro-bem-next-element('child7') { 337 @include bem.next-elem('child7') {
335 @include iro-bem-modifier('mod2') { 338 @include bem.modifier('mod2') {
336 font-size: 2.5em; 339 font-size: 2.5em;
337 340
338 @include iro-bem-modifier('submod2') { 341 @include bem.modifier('submod2') {
339 font-size: 2.75em; 342 font-size: 2.75em;
340 } 343 }
341 } 344 }
@@ -382,14 +385,14 @@
382 385
383 @include assert('element modifier, multiple related elements, manual selector before') { /// 10 /// 386 @include assert('element modifier, multiple related elements, manual selector before') { /// 10 ///
384 @include output(false) { 387 @include output(false) {
385 @include iro-bem-block('something') { 388 @include bem.block('something') {
386 &:hover { 389 &:hover {
387 @include iro-bem-element('child1') { 390 @include bem.elem('child1') {
388 @include iro-bem-next-element('child2', 'child3') { 391 @include bem.next-elem('child2', 'child3') {
389 @include iro-bem-modifier('mod1') { 392 @include bem.modifier('mod1') {
390 font-size: 2.5em; 393 font-size: 2.5em;
391 394
392 @include iro-bem-modifier('submod1') { 395 @include bem.modifier('submod1') {
393 font-size: 2.75em; 396 font-size: 2.75em;
394 } 397 }
395 } 398 }
@@ -398,12 +401,12 @@
398 } 401 }
399 402
400 .test & { 403 .test & {
401 @include iro-bem-element('child4') { 404 @include bem.elem('child4') {
402 @include iro-bem-next-element('child5', 'child6') { 405 @include bem.next-elem('child5', 'child6') {
403 @include iro-bem-modifier('mod1') { 406 @include bem.modifier('mod1') {
404 font-size: 2.5em; 407 font-size: 2.5em;
405 408
406 @include iro-bem-modifier('submod1') { 409 @include bem.modifier('submod1') {
407 font-size: 2.75em; 410 font-size: 2.75em;
408 } 411 }
409 } 412 }
@@ -411,13 +414,13 @@
411 } 414 }
412 } 415 }
413 416
414 @include iro-bem-element('child7') { 417 @include bem.elem('child7') {
415 &:hover { 418 &:hover {
416 @include iro-bem-next-element('child8', 'child9') { 419 @include bem.next-elem('child8', 'child9') {
417 @include iro-bem-modifier('mod2') { 420 @include bem.modifier('mod2') {
418 font-size: 2.5em; 421 font-size: 2.5em;
419 422
420 @include iro-bem-modifier('submod2') { 423 @include bem.modifier('submod2') {
421 font-size: 2.75em; 424 font-size: 2.75em;
422 } 425 }
423 } 426 }
@@ -425,11 +428,11 @@
425 } 428 }
426 429
427 .test & { 430 .test & {
428 @include iro-bem-next-element('child10', 'child11') { 431 @include bem.next-elem('child10', 'child11') {
429 @include iro-bem-modifier('mod2') { 432 @include bem.modifier('mod2') {
430 font-size: 2.5em; 433 font-size: 2.5em;
431 434
432 @include iro-bem-modifier('submod2') { 435 @include bem.modifier('submod2') {
433 font-size: 2.75em; 436 font-size: 2.75em;
434 } 437 }
435 } 438 }
@@ -482,47 +485,45 @@
482 } 485 }
483 } 486 }
484 487
485 /* 488 // @include assert('element modifier, in at-theme') { /// 11 ///
486 @include assert('element modifier, in at-theme') { /// 11 /// 489 // @include output(false) {
487 @include output(false) { 490 // @include bem.block('something') {
488 @include iro-bem-block('something') { 491 // @include bem.at-theme('dark') {
489 @include iro-bem-at-theme('dark') { 492 // @include bem.elem('child') {
490 @include iro-bem-element('child') { 493 // @include bem.modifier('mod') {
491 @include iro-bem-modifier('mod') { 494 // font-size: 2.5em;
492 font-size: 2.5em; 495 //
493 496 // @include bem.modifier('submod') {
494 @include iro-bem-modifier('submod') { 497 // font-size: 2.75em;
495 font-size: 2.75em; 498 // }
496 } 499 // }
497 } 500 // }
498 } 501 // }
499 } 502 // }
500 } 503 // }
501 } 504 //
502 505 // @include expect(false) {
503 @include expect(false) { 506 // .t-dark .something__child--mod,
504 .t-dark .something__child--mod, 507 // [class*=' t-'] .t-dark .something__child--mod,
505 [class*=' t-'] .t-dark .something__child--mod, 508 // [class^='t-'] .t-dark .something__child--mod {
506 [class^='t-'] .t-dark .something__child--mod { 509 // font-size: 2.5em;
507 font-size: 2.5em; 510 // }
508 } 511 //
509 512 // .t-dark .something__child--mod.something__child--submod,
510 .t-dark .something__child--mod.something__child--submod, 513 // [class*=' t-'] .t-dark .something__child--mod.something__child--submod,
511 [class*=' t-'] .t-dark .something__child--mod.something__child--submod, 514 // [class^='t-'] .t-dark .something__child--mod.something__child--submod {
512 [class^='t-'] .t-dark .something__child--mod.something__child--submod { 515 // font-size: 2.75em;
513 font-size: 2.75em; 516 // }
514 } 517 // }
515 } 518 // }
516 }
517 */
518 519
519 @include assert('nested block modifiers, extending') { /// 12 /// 520 @include assert('nested block modifiers, extending') { /// 12 ///
520 @include output { 521 @include output {
521 @include iro-bem-block('something') { 522 @include bem.block('something') {
522 @include iro-bem-modifier('mod') { 523 @include bem.modifier('mod') {
523 font-size: 1.5em; 524 font-size: 1.5em;
524 525
525 @include iro-bem-modifier('submod' true) { 526 @include bem.modifier('submod' true) {
526 font-size: 1.75em; 527 font-size: 1.75em;
527 } 528 }
528 } 529 }
@@ -542,12 +543,12 @@
542 543
543 @include assert('nested element modifiers, extending') { /// 13 /// 544 @include assert('nested element modifiers, extending') { /// 13 ///
544 @include output { 545 @include output {
545 @include iro-bem-block('something') { 546 @include bem.block('something') {
546 @include iro-bem-element('child') { 547 @include bem.elem('child') {
547 @include iro-bem-modifier('mod') { 548 @include bem.modifier('mod') {
548 font-size: 2.5em; 549 font-size: 2.5em;
549 550
550 @include iro-bem-modifier('submod' true) { 551 @include bem.modifier('submod' true) {
551 font-size: 2.75em; 552 font-size: 2.75em;
552 } 553 }
553 } 554 }
@@ -568,19 +569,19 @@
568 569
569 @include assert('block and element modifiers, single element') { /// 14 /// 570 @include assert('block and element modifiers, single element') { /// 14 ///
570 @include output { 571 @include output {
571 @include iro-bem-block('something') { 572 @include bem.block('something') {
572 @include iro-bem-modifier('mod1') { 573 @include bem.modifier('mod1') {
573 font-size: 1.5em; 574 font-size: 1.5em;
574 575
575 @include iro-bem-modifier('submod1') { 576 @include bem.modifier('submod1') {
576 font-size: 1.75em; 577 font-size: 1.75em;
577 } 578 }
578 579
579 @include iro-bem-element('child') { 580 @include bem.elem('child') {
580 @include iro-bem-modifier('mod2') { 581 @include bem.modifier('mod2') {
581 font-size: 2.5em; 582 font-size: 2.5em;
582 583
583 @include iro-bem-modifier('submod2') { 584 @include bem.modifier('submod2') {
584 font-size: 2.75em; 585 font-size: 2.75em;
585 } 586 }
586 } 587 }
@@ -610,19 +611,19 @@
610 611
611 @include assert('block and element modifiers, multiple elements') { /// 15 /// 612 @include assert('block and element modifiers, multiple elements') { /// 15 ///
612 @include output { 613 @include output {
613 @include iro-bem-block('something') { 614 @include bem.block('something') {
614 @include iro-bem-modifier('mod1') { 615 @include bem.modifier('mod1') {
615 font-size: 1.5em; 616 font-size: 1.5em;
616 617
617 @include iro-bem-modifier('submod') { 618 @include bem.modifier('submod1') {
618 font-size: 1.75em; 619 font-size: 1.75em;
619 } 620 }
620 621
621 @include iro-bem-element('child1', 'child2') { 622 @include bem.elem('child1', 'child2') {
622 @include iro-bem-modifier('mod2') { 623 @include bem.modifier('mod2') {
623 font-size: 2.5em; 624 font-size: 2.5em;
624 625
625 @include iro-bem-modifier('submod2') { 626 @include bem.modifier('submod2') {
626 font-size: 2.75em; 627 font-size: 2.75em;
627 } 628 }
628 } 629 }
diff --git a/test/bem/_iro-bem-multi.scss b/test/bem/_multi.scss
index 84bbca2..255fb45 100644
--- a/test/bem/_iro-bem-multi.scss
+++ b/test/bem/_multi.scss
@@ -1,5 +1,8 @@
1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations 1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations
2 2
3@use 'true' as *;
4@use '../../src/bem';
5
3// 6//
4// Included test cases: 7// Included test cases:
5// - /// 1 /// - in root, 2 blocks 8// - /// 1 /// - in root, 2 blocks
@@ -22,13 +25,13 @@
22// - /// 18 /// - in multiple elements, 1 twin element, 1 modifier 25// - /// 18 /// - in multiple elements, 1 twin element, 1 modifier
23// 26//
24 27
25@include it('iro-bem-state') { 28@include it('multi') {
26 @include assert('in root, 2 blocks') { /// 1 /// 29 @include assert('in root, 2 blocks') { /// 1 ///
27 @include output { 30 @include output {
28 @include iro-bem-multi('component:' 'block1', 'object:' 'block2') { 31 @include bem.multi('component:' 'block1', 'object:' 'block2') {
29 font-size: 1em; 32 font-size: 1em;
30 33
31 @include iro-bem-element('child2') { 34 @include bem.elem('child2') {
32 font-size: 2em; 35 font-size: 2em;
33 } 36 }
34 } 37 }
@@ -55,7 +58,7 @@
55 58
56 @include assert('in root, 1 block, 1 manual selector') { /// 2 /// 59 @include assert('in root, 1 block, 1 manual selector') { /// 2 ///
57 @include output { 60 @include output {
58 @include iro-bem-multi('component:' 'block1', 'a:hover') { 61 @include bem.multi('component:' 'block1', 'a:hover') {
59 font-size: 1em; 62 font-size: 1em;
60 } 63 }
61 } 64 }
@@ -73,11 +76,11 @@
73 76
74 @include assert('in block, 2 elements') { /// 3 /// 77 @include assert('in block, 2 elements') { /// 3 ///
75 @include output { 78 @include output {
76 @include iro-bem-block('something') { 79 @include bem.block('something') {
77 @include iro-bem-multi('element:' 'child1' 'child2') { 80 @include bem.multi('elem:' 'child1' 'child2') {
78 font-size: 2em; 81 font-size: 2em;
79 82
80 @include iro-bem-modifier('mod') { 83 @include bem.modifier('mod') {
81 font-size: 2.5em; 84 font-size: 2.5em;
82 } 85 }
83 } 86 }
@@ -99,11 +102,11 @@
99 102
100 @include assert('in block, 1 element, 1 modifier') { /// 4 /// 103 @include assert('in block, 1 element, 1 modifier') { /// 4 ///
101 @include output { 104 @include output {
102 @include iro-bem-block('something') { 105 @include bem.block('something') {
103 @include iro-bem-multi('element:' 'child', 'modifier:' 'mod1') { 106 @include bem.multi('elem:' 'child', 'modifier:' 'mod1') {
104 font-size: 2em; 107 font-size: 2em;
105 108
106 @include iro-bem-modifier('mod2') { 109 @include bem.modifier('mod2') {
107 font-size: 2.5em; 110 font-size: 2.5em;
108 } 111 }
109 } 112 }
@@ -131,11 +134,11 @@
131 134
132 @include assert('in block, 1 element, 1 extending modifier') { /// 5 /// 135 @include assert('in block, 1 element, 1 extending modifier') { /// 5 ///
133 @include output { 136 @include output {
134 @include iro-bem-block('something') { 137 @include bem.block('something') {
135 @include iro-bem-multi('element:' 'child', 'modifier:' 'mod1') { 138 @include bem.multi('elem:' 'child', 'modifier:' 'mod1') {
136 font-size: 2em; 139 font-size: 2em;
137 140
138 @include iro-bem-modifier('mod2' true) { 141 @include bem.modifier('mod2' true) {
139 font-size: 2.5em; 142 font-size: 2.5em;
140 } 143 }
141 } 144 }
@@ -163,11 +166,11 @@
163 166
164 @include assert('in block, 1 element, 1 & selector') { /// 6 /// 167 @include assert('in block, 1 element, 1 & selector') { /// 6 ///
165 @include output { 168 @include output {
166 @include iro-bem-block('something') { 169 @include bem.block('something') {
167 @include iro-bem-multi('&', 'element:' 'child') { 170 @include bem.multi('&', 'elem:' 'child') {
168 font-size: 2em; 171 font-size: 2em;
169 172
170 @include iro-bem-modifier('mod') { 173 @include bem.modifier('mod') {
171 font-size: 2.5em; 174 font-size: 2.5em;
172 } 175 }
173 } 176 }
@@ -195,11 +198,11 @@
195 198
196 @include assert('in block, 1 element, 1 manual selector') { /// 7 /// 199 @include assert('in block, 1 element, 1 manual selector') { /// 7 ///
197 @include output { 200 @include output {
198 @include iro-bem-block('something') { 201 @include bem.block('something') {
199 @include iro-bem-multi('> a:hover', 'element:' 'child1') { 202 @include bem.multi('> a:hover', 'elem:' 'child1') {
200 font-size: 2em; 203 font-size: 2em;
201 204
202 @include iro-bem-element('child2') { 205 @include bem.elem('child2') {
203 font-size: 3em; 206 font-size: 3em;
204 } 207 }
205 } 208 }
@@ -227,12 +230,12 @@
227 230
228 @include assert('in element, 2 elements, 1 modifier') { /// 8 /// 231 @include assert('in element, 2 elements, 1 modifier') { /// 8 ///
229 @include output { 232 @include output {
230 @include iro-bem-block('something') { 233 @include bem.block('something') {
231 @include iro-bem-element('child') { 234 @include bem.elem('child') {
232 @include iro-bem-multi('element:' 'subchild1' 'subchild2', 'modifier:' 'mod1') { 235 @include bem.multi('elem:' 'subchild1' 'subchild2', 'modifier:' 'mod1') {
233 font-size: 3em; 236 font-size: 3em;
234 237
235 @include iro-bem-modifier('mod2') { 238 @include bem.modifier('mod2') {
236 font-size: 3.5em; 239 font-size: 3.5em;
237 } 240 }
238 } 241 }
@@ -263,12 +266,12 @@
263 266
264 @include assert('in element, 1 element, 1 & selector') { /// 9 /// 267 @include assert('in element, 1 element, 1 & selector') { /// 9 ///
265 @include output { 268 @include output {
266 @include iro-bem-block('something') { 269 @include bem.block('something') {
267 @include iro-bem-element('child') { 270 @include bem.elem('child') {
268 @include iro-bem-multi('element:' 'subchild', '&') { 271 @include bem.multi('elem:' 'subchild', '&') {
269 font-size: 3em; 272 font-size: 3em;
270 273
271 @include iro-bem-modifier('mod') { 274 @include bem.modifier('mod') {
272 font-size: 3.5em; 275 font-size: 3.5em;
273 } 276 }
274 } 277 }
@@ -297,13 +300,13 @@
297 300
298 @include assert('in element in manual selector, 2 elements') { /// 10 /// 301 @include assert('in element in manual selector, 2 elements') { /// 10 ///
299 @include output { 302 @include output {
300 @include iro-bem-block('something') { 303 @include bem.block('something') {
301 @include iro-bem-element('child') { 304 @include bem.elem('child') {
302 &:hover { 305 &:hover {
303 @include iro-bem-multi('element:' 'subchild1' 'subchild2') { 306 @include bem.multi('elem:' 'subchild1' 'subchild2') {
304 font-size: 3em; 307 font-size: 3em;
305 308
306 @include iro-bem-modifier('mod2') { 309 @include bem.modifier('mod2') {
307 font-size: 3.5em; 310 font-size: 3.5em;
308 } 311 }
309 } 312 }
@@ -327,10 +330,10 @@
327 330
328 @include assert('in element in manual selector, 1 element, 1 & selector') { /// 11 /// 331 @include assert('in element in manual selector, 1 element, 1 & selector') { /// 11 ///
329 @include output { 332 @include output {
330 @include iro-bem-block('something') { 333 @include bem.block('something') {
331 @include iro-bem-element('child') { 334 @include bem.elem('child') {
332 &:hover { 335 &:hover {
333 @include iro-bem-multi('element:' 'subchild', '&') { 336 @include bem.multi('elem:' 'subchild', '&') {
334 font-size: 3em; 337 font-size: 3em;
335 } 338 }
336 } 339 }
@@ -351,9 +354,9 @@
351 354
352 @include assert('in multiple elements, 2 elements, 1 modifier') { /// 12 /// 355 @include assert('in multiple elements, 2 elements, 1 modifier') { /// 12 ///
353 @include output { 356 @include output {
354 @include iro-bem-block('something') { 357 @include bem.block('something') {
355 @include iro-bem-element('child1', 'child2') { 358 @include bem.elem('child1', 'child2') {
356 @include iro-bem-multi('element:' 'subchild1' 'subchild2', 'modifier:' 'mod') { 359 @include bem.multi('elem:' 'subchild1' 'subchild2', 'modifier:' 'mod') {
357 font-size: 3em; 360 font-size: 3em;
358 } 361 }
359 } 362 }
@@ -377,12 +380,12 @@
377 380
378 @include assert('in multiple elements, 1 element, 1 & selector') { /// 13 /// 381 @include assert('in multiple elements, 1 element, 1 & selector') { /// 13 ///
379 @include output { 382 @include output {
380 @include iro-bem-block('something') { 383 @include bem.block('something') {
381 @include iro-bem-element('child1', 'child2') { 384 @include bem.elem('child1', 'child2') {
382 @include iro-bem-multi('element:' 'subchild', '&') { 385 @include bem.multi('elem:' 'subchild', '&') {
383 font-size: 3em; 386 font-size: 3em;
384 387
385 @include iro-bem-modifier('mod') { 388 @include bem.modifier('mod') {
386 font-size: 3.5em; 389 font-size: 3.5em;
387 } 390 }
388 } 391 }
@@ -415,10 +418,10 @@
415 418
416 @include assert('in related elements, 2 elements, 1 modifier') { /// 14 /// 419 @include assert('in related elements, 2 elements, 1 modifier') { /// 14 ///
417 @include output { 420 @include output {
418 @include iro-bem-block('something') { 421 @include bem.block('something') {
419 @include iro-bem-element('child1') { 422 @include bem.elem('child1') {
420 @include iro-bem-next-element('child2', 'child3') { 423 @include bem.next-elem('child2', 'child3') {
421 @include iro-bem-multi('element:' 'subchild1' 'subchild2', 'modifier:' 'mod') { 424 @include bem.multi('elem:' 'subchild1' 'subchild2', 'modifier:' 'mod') {
422 font-size: 3em; 425 font-size: 3em;
423 } 426 }
424 } 427 }
@@ -443,13 +446,13 @@
443 446
444 @include assert('in related elements, 1 element, 1 & selector') { /// 15 /// 447 @include assert('in related elements, 1 element, 1 & selector') { /// 15 ///
445 @include output { 448 @include output {
446 @include iro-bem-block('something') { 449 @include bem.block('something') {
447 @include iro-bem-element('child1') { 450 @include bem.elem('child1') {
448 @include iro-bem-next-element('child2', 'child3') { 451 @include bem.next-elem('child2', 'child3') {
449 @include iro-bem-multi('element:' 'subchild', '&') { 452 @include bem.multi('elem:' 'subchild', '&') {
450 font-size: 4em; 453 font-size: 4em;
451 454
452 @include iro-bem-modifier('mod') { 455 @include bem.modifier('mod') {
453 font-size: 4.5em; 456 font-size: 4.5em;
454 } 457 }
455 } 458 }
@@ -483,12 +486,12 @@
483 486
484 @include assert('in element, 2 related elements, 1 modifier') { /// 16 /// 487 @include assert('in element, 2 related elements, 1 modifier') { /// 16 ///
485 @include output { 488 @include output {
486 @include iro-bem-block('something') { 489 @include bem.block('something') {
487 @include iro-bem-element('child1') { 490 @include bem.elem('child1') {
488 @include iro-bem-multi('next-element:' 'child2' 'child3', 'modifier:' 'mod1') { 491 @include bem.multi('next-elem:' 'child2' 'child3', 'modifier:' 'mod1') {
489 font-size: 3em; 492 font-size: 3em;
490 493
491 @include iro-bem-modifier('mod2') { 494 @include bem.modifier('mod2') {
492 font-size: 3.5em; 495 font-size: 3.5em;
493 } 496 }
494 } 497 }
@@ -519,12 +522,12 @@
519 522
520 @include assert('in element, 1 twin element, 1 modifier') { /// 17 /// 523 @include assert('in element, 1 twin element, 1 modifier') { /// 17 ///
521 @include output { 524 @include output {
522 @include iro-bem-block('something') { 525 @include bem.block('something') {
523 @include iro-bem-element('child') { 526 @include bem.elem('child') {
524 @include iro-bem-multi('next-twin-element', 'modifier:' 'mod1') { 527 @include bem.multi('next-twin-elem', 'modifier:' 'mod1') {
525 font-size: 3em; 528 font-size: 3em;
526 529
527 @include iro-bem-modifier('mod2') { 530 @include bem.modifier('mod2') {
528 font-size: 3.5em; 531 font-size: 3.5em;
529 } 532 }
530 } 533 }
@@ -553,12 +556,12 @@
553 556
554 @include assert('in multiple elements, 1 twin element, 1 modifier') { /// 18 /// 557 @include assert('in multiple elements, 1 twin element, 1 modifier') { /// 18 ///
555 @include output { 558 @include output {
556 @include iro-bem-block('something') { 559 @include bem.block('something') {
557 @include iro-bem-element('child1', 'child2') { 560 @include bem.elem('child1', 'child2') {
558 @include iro-bem-multi('next-twin-element', 'modifier:' 'mod1') { 561 @include bem.multi('next-twin-elem', 'modifier:' 'mod1') {
559 font-size: 3em; 562 font-size: 3em;
560 563
561 @include iro-bem-modifier('mod2') { 564 @include bem.modifier('mod2') {
562 font-size: 3.5em; 565 font-size: 3.5em;
563 } 566 }
564 } 567 }
diff --git a/test/bem/_iro-bem-next-twin-element.scss b/test/bem/_next-twin-element.scss
index 96fc3a9..85fe473 100644
--- a/test/bem/_iro-bem-next-twin-element.scss
+++ b/test/bem/_next-twin-element.scss
@@ -1,5 +1,8 @@
1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations 1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations
2 2
3@use 'true' as *;
4@use '../../src/bem';
5
3// 6//
4// Included test cases: 7// Included test cases:
5// - /// 1 /// - single element 8// - /// 1 /// - single element
@@ -10,12 +13,12 @@
10// - /// 6 /// - multiple elements, modifier in-between 13// - /// 6 /// - multiple elements, modifier in-between
11// 14//
12 15
13@include it('iro-bem-next-twin-element') { 16@include it('next-twin-element') {
14 @include assert('single element') { /// 1 /// 17 @include assert('single element') { /// 1 ///
15 @include output { 18 @include output {
16 @include iro-bem-block('something') { 19 @include bem.block('something') {
17 @include iro-bem-element('child') { 20 @include bem.elem('child') {
18 @include iro-bem-next-twin-element { 21 @include bem.next-twin-element {
19 font-size: 2em; 22 font-size: 2em;
20 } 23 }
21 } 24 }
@@ -31,16 +34,16 @@
31 34
32 @include assert('single element, manual selector in-between') { /// 2 /// 35 @include assert('single element, manual selector in-between') { /// 2 ///
33 @include output(false) { 36 @include output(false) {
34 @include iro-bem-block('something') { 37 @include bem.block('something') {
35 @include iro-bem-element('child') { 38 @include bem.elem('child') {
36 &:hover { 39 &:hover {
37 @include iro-bem-next-twin-element { 40 @include bem.next-twin-element {
38 font-size: 2em; 41 font-size: 2em;
39 } 42 }
40 } 43 }
41 44
42 .test & { 45 .test & {
43 @include iro-bem-next-twin-element { 46 @include bem.next-twin-element {
44 font-size: 2em; 47 font-size: 2em;
45 } 48 }
46 } 49 }
@@ -61,10 +64,10 @@
61 64
62 @include assert('single element, modifier in-between') { /// 3 /// 65 @include assert('single element, modifier in-between') { /// 3 ///
63 @include output { 66 @include output {
64 @include iro-bem-block('something') { 67 @include bem.block('something') {
65 @include iro-bem-element('child') { 68 @include bem.elem('child') {
66 @include iro-bem-modifier('mod') { 69 @include bem.modifier('mod') {
67 @include iro-bem-next-twin-element { 70 @include bem.next-twin-element {
68 font-size: 2.5em; 71 font-size: 2.5em;
69 } 72 }
70 } 73 }
@@ -81,9 +84,9 @@
81 84
82 @include assert('multiple elements') { /// 4 /// 85 @include assert('multiple elements') { /// 4 ///
83 @include output { 86 @include output {
84 @include iro-bem-block('something') { 87 @include bem.block('something') {
85 @include iro-bem-element('child1', 'child2') { 88 @include bem.elem('child1', 'child2') {
86 @include iro-bem-next-twin-element { 89 @include bem.next-twin-element {
87 font-size: 2em; 90 font-size: 2em;
88 } 91 }
89 } 92 }
@@ -100,16 +103,16 @@
100 103
101 @include assert('multiple elements, manual selector in-between') { /// 5 /// 104 @include assert('multiple elements, manual selector in-between') { /// 5 ///
102 @include output(false) { 105 @include output(false) {
103 @include iro-bem-block('something') { 106 @include bem.block('something') {
104 @include iro-bem-element('child1', 'child2') { 107 @include bem.elem('child1', 'child2') {
105 &:hover { 108 &:hover {
106 @include iro-bem-next-twin-element { 109 @include bem.next-twin-element {
107 font-size: 2em; 110 font-size: 2em;
108 } 111 }
109 } 112 }
110 113
111 .test & { 114 .test & {
112 @include iro-bem-next-twin-element { 115 @include bem.next-twin-element {
113 font-size: 2em; 116 font-size: 2em;
114 } 117 }
115 } 118 }
@@ -132,10 +135,10 @@
132 135
133 @include assert('multiple elements, modifier in-between') { /// 6 /// 136 @include assert('multiple elements, modifier in-between') { /// 6 ///
134 @include output { 137 @include output {
135 @include iro-bem-block('something') { 138 @include bem.block('something') {
136 @include iro-bem-element('child1', 'child2') { 139 @include bem.elem('child1', 'child2') {
137 @include iro-bem-modifier('mod') { 140 @include bem.modifier('mod') {
138 @include iro-bem-next-twin-element { 141 @include bem.next-twin-element {
139 font-size: 2.5em; 142 font-size: 2.5em;
140 } 143 }
141 } 144 }
diff --git a/test/bem/_iro-bem-related-element.scss b/test/bem/_related-element.scss
index b0c6b94..5a829e8 100644
--- a/test/bem/_iro-bem-related-element.scss
+++ b/test/bem/_related-element.scss
@@ -1,5 +1,8 @@
1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations 1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations
2 2
3@use 'true' as *;
4@use '../../src/bem';
5
3// 6//
4// Included test cases: 7// Included test cases:
5// - /// 1 /// - single element, single related element 8// - /// 1 /// - single element, single related element
@@ -16,16 +19,16 @@
16// - /// 12 /// - multiple elements, multiple related elements, modifier in-between 19// - /// 12 /// - multiple elements, multiple related elements, modifier in-between
17// 20//
18 21
19@include it('iro-bem-related-element') { 22@include it('related-element') {
20 @include assert('single element, single related element') { /// 1 /// 23 @include assert('single element, single related element') { /// 1 ///
21 @include output { 24 @include output {
22 @include iro-bem-block('something') { 25 @include bem.block('something') {
23 @include iro-bem-element('child') { 26 @include bem.elem('child') {
24 @include iro-bem-related-element('+', 'subchild1') { 27 @include bem.related-elem('+', 'subchild1') {
25 font-size: 2em; 28 font-size: 2em;
26 } 29 }
27 30
28 @include iro-bem-related-element('~', 'subchild2') { 31 @include bem.related-elem('~', 'subchild2') {
29 font-size: 2em; 32 font-size: 2em;
30 } 33 }
31 } 34 }
@@ -45,24 +48,24 @@
45 48
46 @include assert('single element, single related element, manual selector in-between') { /// 2 /// 49 @include assert('single element, single related element, manual selector in-between') { /// 2 ///
47 @include output(false) { 50 @include output(false) {
48 @include iro-bem-block('something') { 51 @include bem.block('something') {
49 @include iro-bem-element('child') { 52 @include bem.elem('child') {
50 &:hover { 53 &:hover {
51 @include iro-bem-related-element('+', 'subchild1') { 54 @include bem.related-elem('+', 'subchild1') {
52 font-size: 2em; 55 font-size: 2em;
53 } 56 }
54 57
55 @include iro-bem-related-element('~', 'subchild2') { 58 @include bem.related-elem('~', 'subchild2') {
56 font-size: 2em; 59 font-size: 2em;
57 } 60 }
58 } 61 }
59 62
60 .test & { 63 .test & {
61 @include iro-bem-related-element('+', 'subchild3') { 64 @include bem.related-elem('+', 'subchild3') {
62 font-size: 2em; 65 font-size: 2em;
63 } 66 }
64 67
65 @include iro-bem-related-element('~', 'subchild4') { 68 @include bem.related-elem('~', 'subchild4') {
66 font-size: 2em; 69 font-size: 2em;
67 } 70 }
68 } 71 }
@@ -91,14 +94,14 @@
91 94
92 @include assert('single element, single related element, modifier in-between') { /// 3 /// 95 @include assert('single element, single related element, modifier in-between') { /// 3 ///
93 @include output { 96 @include output {
94 @include iro-bem-block('something') { 97 @include bem.block('something') {
95 @include iro-bem-element('child') { 98 @include bem.elem('child') {
96 @include iro-bem-modifier('mod') { 99 @include bem.modifier('mod') {
97 @include iro-bem-related-element('+', 'subchild1') { 100 @include bem.related-elem('+', 'subchild1') {
98 font-size: 2.5em; 101 font-size: 2.5em;
99 } 102 }
100 103
101 @include iro-bem-related-element('~', 'subchild2') { 104 @include bem.related-elem('~', 'subchild2') {
102 font-size: 2.5em; 105 font-size: 2.5em;
103 } 106 }
104 } 107 }
@@ -119,13 +122,13 @@
119 122
120 @include assert('single element, multiple related elements') { /// 4 /// 123 @include assert('single element, multiple related elements') { /// 4 ///
121 @include output { 124 @include output {
122 @include iro-bem-block('something') { 125 @include bem.block('something') {
123 @include iro-bem-element('child') { 126 @include bem.elem('child') {
124 @include iro-bem-related-element('+', 'subchild1', 'subchild2') { 127 @include bem.related-elem('+', 'subchild1', 'subchild2') {
125 font-size: 2.5em; 128 font-size: 2.5em;
126 } 129 }
127 130
128 @include iro-bem-related-element('~', 'subchild3', 'subchild4') { 131 @include bem.related-elem('~', 'subchild3', 'subchild4') {
129 font-size: 2.5em; 132 font-size: 2.5em;
130 } 133 }
131 } 134 }
@@ -147,24 +150,24 @@
147 150
148 @include assert('single element, multiple related elements, manual selector in-between') { /// 5 /// 151 @include assert('single element, multiple related elements, manual selector in-between') { /// 5 ///
149 @include output(false) { 152 @include output(false) {
150 @include iro-bem-block('something') { 153 @include bem.block('something') {
151 @include iro-bem-element('child') { 154 @include bem.elem('child') {
152 &:hover { 155 &:hover {
153 @include iro-bem-related-element('+', 'subchild1', 'subchild2') { 156 @include bem.related-elem('+', 'subchild1', 'subchild2') {
154 font-size: 2.5em; 157 font-size: 2.5em;
155 } 158 }
156 159
157 @include iro-bem-related-element('~', 'subchild3', 'subchild4') { 160 @include bem.related-elem('~', 'subchild3', 'subchild4') {
158 font-size: 2.5em; 161 font-size: 2.5em;
159 } 162 }
160 } 163 }
161 164
162 .test & { 165 .test & {
163 @include iro-bem-related-element('+', 'subchild5', 'subchild6') { 166 @include bem.related-elem('+', 'subchild5', 'subchild6') {
164 font-size: 2.5em; 167 font-size: 2.5em;
165 } 168 }
166 169
167 @include iro-bem-related-element('~', 'subchild7', 'subchild8') { 170 @include bem.related-elem('~', 'subchild7', 'subchild8') {
168 font-size: 2.5em; 171 font-size: 2.5em;
169 } 172 }
170 } 173 }
@@ -197,14 +200,14 @@
197 200
198 @include assert('single element, multiple related elements, modifier in-between') { /// 6 /// 201 @include assert('single element, multiple related elements, modifier in-between') { /// 6 ///
199 @include output { 202 @include output {
200 @include iro-bem-block('something') { 203 @include bem.block('something') {
201 @include iro-bem-element('child') { 204 @include bem.elem('child') {
202 @include iro-bem-modifier('mod') { 205 @include bem.modifier('mod') {
203 @include iro-bem-related-element('+', 'subchild1', 'subchild2') { 206 @include bem.related-elem('+', 'subchild1', 'subchild2') {
204 font-size: 2.5em; 207 font-size: 2.5em;
205 } 208 }
206 209
207 @include iro-bem-related-element('~', 'subchild3', 'subchild4') { 210 @include bem.related-elem('~', 'subchild3', 'subchild4') {
208 font-size: 2.5em; 211 font-size: 2.5em;
209 } 212 }
210 } 213 }
@@ -227,13 +230,13 @@
227 230
228 @include assert('multiple elements, single related element') { /// 7 /// 231 @include assert('multiple elements, single related element') { /// 7 ///
229 @include output { 232 @include output {
230 @include iro-bem-block('something') { 233 @include bem.block('something') {
231 @include iro-bem-element('child1', 'child2') { 234 @include bem.elem('child1', 'child2') {
232 @include iro-bem-related-element('+', 'subchild1') { 235 @include bem.related-elem('+', 'subchild1') {
233 font-size: 2em; 236 font-size: 2em;
234 } 237 }
235 238
236 @include iro-bem-related-element('~', 'subchild2') { 239 @include bem.related-elem('~', 'subchild2') {
237 font-size: 2em; 240 font-size: 2em;
238 } 241 }
239 } 242 }
@@ -255,24 +258,24 @@
255 258
256 @include assert('multiple elements, single related element, manual selector in-between') { /// 8 /// 259 @include assert('multiple elements, single related element, manual selector in-between') { /// 8 ///
257 @include output(false) { 260 @include output(false) {
258 @include iro-bem-block('something') { 261 @include bem.block('something') {
259 @include iro-bem-element('child1', 'child2') { 262 @include bem.elem('child1', 'child2') {
260 &:hover { 263 &:hover {
261 @include iro-bem-related-element('+', 'subchild1') { 264 @include bem.related-elem('+', 'subchild1') {
262 font-size: 2em; 265 font-size: 2em;
263 } 266 }
264 267
265 @include iro-bem-related-element('~', 'subchild2') { 268 @include bem.related-elem('~', 'subchild2') {
266 font-size: 2em; 269 font-size: 2em;
267 } 270 }
268 } 271 }
269 272
270 .test & { 273 .test & {
271 @include iro-bem-related-element('+', 'subchild3') { 274 @include bem.related-elem('+', 'subchild3') {
272 font-size: 2em; 275 font-size: 2em;
273 } 276 }
274 277
275 @include iro-bem-related-element('~', 'subchild4') { 278 @include bem.related-elem('~', 'subchild4') {
276 font-size: 2em; 279 font-size: 2em;
277 } 280 }
278 } 281 }
@@ -305,14 +308,14 @@
305 308
306 @include assert('multiple elements, single related element, modifier in-between') { /// 9 /// 309 @include assert('multiple elements, single related element, modifier in-between') { /// 9 ///
307 @include output { 310 @include output {
308 @include iro-bem-block('something') { 311 @include bem.block('something') {
309 @include iro-bem-element('child1', 'child2') { 312 @include bem.elem('child1', 'child2') {
310 @include iro-bem-modifier('mod') { 313 @include bem.modifier('mod') {
311 @include iro-bem-related-element('+', 'subchild1') { 314 @include bem.related-elem('+', 'subchild1') {
312 font-size: 2.5em; 315 font-size: 2.5em;
313 } 316 }
314 317
315 @include iro-bem-related-element('~', 'subchild2') { 318 @include bem.related-elem('~', 'subchild2') {
316 font-size: 2.5em; 319 font-size: 2.5em;
317 } 320 }
318 } 321 }
@@ -335,13 +338,13 @@
335 338
336 @include assert('multiple elements, multiple related elements') { /// 10 /// 339 @include assert('multiple elements, multiple related elements') { /// 10 ///
337 @include output { 340 @include output {
338 @include iro-bem-block('something') { 341 @include bem.block('something') {
339 @include iro-bem-element('child1', 'child2') { 342 @include bem.elem('child1', 'child2') {
340 @include iro-bem-related-element('+', 'subchild1', 'subchild2') { 343 @include bem.related-elem('+', 'subchild1', 'subchild2') {
341 font-size: 2em; 344 font-size: 2em;
342 } 345 }
343 346
344 @include iro-bem-related-element('~', 'subchild3', 'subchild4') { 347 @include bem.related-elem('~', 'subchild3', 'subchild4') {
345 font-size: 2em; 348 font-size: 2em;
346 } 349 }
347 } 350 }
@@ -367,24 +370,24 @@
367 370
368 @include assert('multiple elements, multiple related elements, manual selector in-between') { /// 11 /// 371 @include assert('multiple elements, multiple related elements, manual selector in-between') { /// 11 ///
369 @include output(false) { 372 @include output(false) {
370 @include iro-bem-block('something') { 373 @include bem.block('something') {
371 @include iro-bem-element('child1', 'child2') { 374 @include bem.elem('child1', 'child2') {
372 &:hover { 375 &:hover {
373 @include iro-bem-related-element('+', 'subchild1', 'subchild2') { 376 @include bem.related-elem('+', 'subchild1', 'subchild2') {
374 font-size: 2em; 377 font-size: 2em;
375 } 378 }
376 379
377 @include iro-bem-related-element('~', 'subchild3', 'subchild4') { 380 @include bem.related-elem('~', 'subchild3', 'subchild4') {
378 font-size: 2em; 381 font-size: 2em;
379 } 382 }
380 } 383 }
381 384
382 .test & { 385 .test & {
383 @include iro-bem-related-element('+', 'subchild5', 'subchild6') { 386 @include bem.related-elem('+', 'subchild5', 'subchild6') {
384 font-size: 2em; 387 font-size: 2em;
385 } 388 }
386 389
387 @include iro-bem-related-element('~', 'subchild7', 'subchild8') { 390 @include bem.related-elem('~', 'subchild7', 'subchild8') {
388 font-size: 2em; 391 font-size: 2em;
389 } 392 }
390 } 393 }
@@ -425,14 +428,14 @@
425 428
426 @include assert('multiple elements, multiple related elements, modifier in-between') { /// 12 /// 429 @include assert('multiple elements, multiple related elements, modifier in-between') { /// 12 ///
427 @include output { 430 @include output {
428 @include iro-bem-block('something') { 431 @include bem.block('something') {
429 @include iro-bem-element('child1', 'child2') { 432 @include bem.elem('child1', 'child2') {
430 @include iro-bem-modifier('mod') { 433 @include bem.modifier('mod') {
431 @include iro-bem-related-element('+', 'subchild1', 'subchild2') { 434 @include bem.related-elem('+', 'subchild1', 'subchild2') {
432 font-size: 2em; 435 font-size: 2em;
433 } 436 }
434 437
435 @include iro-bem-related-element('~', 'subchild3', 'subchild4') { 438 @include bem.related-elem('~', 'subchild3', 'subchild4') {
436 font-size: 2em; 439 font-size: 2em;
437 } 440 }
438 } 441 }
diff --git a/test/bem/_iro-bem-state.scss b/test/bem/_state.scss
index 57eb233..674da5f 100644
--- a/test/bem/_iro-bem-state.scss
+++ b/test/bem/_state.scss
@@ -1,5 +1,8 @@
1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations 1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations
2 2
3@use 'true' as *;
4@use '../../src/bem';
5
3// 6//
4// Included test cases: 7// Included test cases:
5// - /// 1 /// - single block, single state 8// - /// 1 /// - single block, single state
@@ -10,15 +13,15 @@
10// - /// 6 /// - multiple elements, multiple states 13// - /// 6 /// - multiple elements, multiple states
11// 14//
12 15
13@include it('iro-bem-state') { 16@include it('state') {
14 @include assert('single block, single state') { /// 1 /// 17 @include assert('single block, single state') { /// 1 ///
15 @include output { 18 @include output {
16 @include iro-bem-block('something') { 19 @include bem.block('something') {
17 @include iro-bem-is('active') { 20 @include bem.is('active') {
18 font-size: 1.25em; 21 font-size: 1.25em;
19 } 22 }
20 23
21 @include iro-bem-has('state') { 24 @include bem.has('state') {
22 font-size: 1.75em; 25 font-size: 1.75em;
23 } 26 }
24 } 27 }
@@ -37,13 +40,13 @@
37 40
38 @include assert('single element, single state') { /// 2 /// 41 @include assert('single element, single state') { /// 2 ///
39 @include output { 42 @include output {
40 @include iro-bem-block('something') { 43 @include bem.block('something') {
41 @include iro-bem-element('child') { 44 @include bem.elem('child') {
42 @include iro-bem-is('active') { 45 @include bem.is('active') {
43 font-size: 2.25em; 46 font-size: 2.25em;
44 } 47 }
45 48
46 @include iro-bem-has('state') { 49 @include bem.has('state') {
47 font-size: 2.75em; 50 font-size: 2.75em;
48 } 51 }
49 } 52 }
@@ -63,12 +66,12 @@
63 66
64 @include assert('single block, multiple states') { /// 3 /// 67 @include assert('single block, multiple states') { /// 3 ///
65 @include output { 68 @include output {
66 @include iro-bem-block('something') { 69 @include bem.block('something') {
67 @include iro-bem-is('active', 'primary') { 70 @include bem.is('active', 'primary') {
68 font-size: 1.25em; 71 font-size: 1.25em;
69 } 72 }
70 73
71 @include iro-bem-has('state', 'indicator') { 74 @include bem.has('state', 'indicator') {
72 font-size: 1.75em; 75 font-size: 1.75em;
73 } 76 }
74 } 77 }
@@ -89,13 +92,13 @@
89 92
90 @include assert('single element, multiple states') { /// 4 /// 93 @include assert('single element, multiple states') { /// 4 ///
91 @include output { 94 @include output {
92 @include iro-bem-block('something') { 95 @include bem.block('something') {
93 @include iro-bem-element('child') { 96 @include bem.elem('child') {
94 @include iro-bem-is('active', 'primary') { 97 @include bem.is('active', 'primary') {
95 font-size: 2.25em; 98 font-size: 2.25em;
96 } 99 }
97 100
98 @include iro-bem-has('state', 'indicator') { 101 @include bem.has('state', 'indicator') {
99 font-size: 2.75em; 102 font-size: 2.75em;
100 } 103 }
101 } 104 }
@@ -117,13 +120,13 @@
117 120
118 @include assert('multiple elements, single state') { /// 5 /// 121 @include assert('multiple elements, single state') { /// 5 ///
119 @include output { 122 @include output {
120 @include iro-bem-block('something') { 123 @include bem.block('something') {
121 @include iro-bem-element('child1', 'child2') { 124 @include bem.elem('child1', 'child2') {
122 @include iro-bem-is('active') { 125 @include bem.is('active') {
123 font-size: 2.25em; 126 font-size: 2.25em;
124 } 127 }
125 128
126 @include iro-bem-has('state') { 129 @include bem.has('state') {
127 font-size: 2.75em; 130 font-size: 2.75em;
128 } 131 }
129 } 132 }
@@ -145,13 +148,13 @@
145 148
146 @include assert('multiple elements, multiple states') { /// 6 /// 149 @include assert('multiple elements, multiple states') { /// 6 ///
147 @include output { 150 @include output {
148 @include iro-bem-block('something') { 151 @include bem.block('something') {
149 @include iro-bem-element('child1', 'child2') { 152 @include bem.elem('child1', 'child2') {
150 @include iro-bem-is('active', 'primary') { 153 @include bem.is('active', 'primary') {
151 font-size: 2.25em; 154 font-size: 2.25em;
152 } 155 }
153 156
154 @include iro-bem-has('state', 'indicator') { 157 @include bem.has('state', 'indicator') {
155 font-size: 2.75em; 158 font-size: 2.75em;
156 } 159 }
157 } 160 }
diff --git a/test/bem/_iro-bem-suffix.scss b/test/bem/_suffix.scss
index c6ca787..34f55b6 100644
--- a/test/bem/_iro-bem-suffix.scss
+++ b/test/bem/_suffix.scss
@@ -1,5 +1,8 @@
1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations 1// sass-lint:disable class-name-format force-element-nesting force-pseudo-nesting mixins-before-declarations
2 2
3@use 'true' as *;
4@use '../../src/bem';
5
3// 6//
4// Included test cases: 7// Included test cases:
5// - /// 1 /// - block suffix 8// - /// 1 /// - block suffix
@@ -8,11 +11,11 @@
8// - /// 4 /// - multiple element suffix 11// - /// 4 /// - multiple element suffix
9// 12//
10 13
11@include it('iro-bem-suffix') { 14@include it('suffix') {
12 @include assert('block suffix') { /// 1 /// 15 @include assert('block suffix') { /// 1 ///
13 @include output { 16 @include output {
14 @include iro-bem-block('something') { 17 @include bem.block('something') {
15 @include iro-bem-suffix('sm') { 18 @include bem.suffix('sm') {
16 font-size: 1.5em; 19 font-size: 1.5em;
17 } 20 }
18 } 21 }
@@ -27,9 +30,9 @@
27 30
28 @include assert('element suffix') { /// 2 /// 31 @include assert('element suffix') { /// 2 ///
29 @include output { 32 @include output {
30 @include iro-bem-block('something') { 33 @include bem.block('something') {
31 @include iro-bem-element('child') { 34 @include bem.elem('child') {
32 @include iro-bem-suffix('sm') { 35 @include bem.suffix('sm') {
33 font-size: 2.5em; 36 font-size: 2.5em;
34 } 37 }
35 } 38 }
@@ -45,16 +48,16 @@
45 48
46 @include assert('modifier suffix') { /// 3 /// 49 @include assert('modifier suffix') { /// 3 ///
47 @include output { 50 @include output {
48 @include iro-bem-block('something') { 51 @include bem.block('something') {
49 @include iro-bem-modifier('mod1') { 52 @include bem.modifier('mod1') {
50 @include iro-bem-suffix('sm') { 53 @include bem.suffix('sm') {
51 font-size: 1.75em; 54 font-size: 1.75em;
52 } 55 }
53 } 56 }
54 57
55 @include iro-bem-element('child') { 58 @include bem.elem('child') {
56 @include iro-bem-modifier('mod2') { 59 @include bem.modifier('mod2') {
57 @include iro-bem-suffix('sm') { 60 @include bem.suffix('sm') {
58 font-size: 2.75em; 61 font-size: 2.75em;
59 } 62 }
60 } 63 }
@@ -75,9 +78,9 @@
75 78
76 @include assert('multiple element suffix') { /// 4 /// 79 @include assert('multiple element suffix') { /// 4 ///
77 @include output { 80 @include output {
78 @include iro-bem-block('something') { 81 @include bem.block('something') {
79 @include iro-bem-element('child1', 'child2') { 82 @include bem.elem('child1', 'child2') {
80 @include iro-bem-suffix('sm') { 83 @include bem.suffix('sm') {
81 font-size: 2.5em; 84 font-size: 2.5em;
82 } 85 }
83 } 86 }
diff --git a/test/test.scss b/test/test.scss
index 86c86e9..bddd801 100644
--- a/test/test.scss
+++ b/test/test.scss
@@ -1,8 +1,7 @@
1@import '../src/main'; 1@use 'true' as *;
2@use '../src/gradients';
2 3
3@import 'true'; 4gradients.$easing-gradient-steps: 4;
4
5$iro-easing-gradient-steps: 4;
6 5
7@import 'functions'; 6@import 'functions';
8@import 'contexts'; 7@import 'contexts';