@@ -40,6 +40,28 @@ describe 'SCSS grammar', ->
4040 expect (tokens[0 ]).toEqual value : ' @' , scopes : [' source.css.scss' , ' meta.at-rule.at-root.scss' , ' keyword.control.at-rule.at-root.scss' , ' punctuation.definition.keyword.scss' ]
4141 expect (tokens[1 ]).toEqual value : ' at-root' , scopes : [' source.css.scss' , ' meta.at-rule.at-root.scss' , ' keyword.control.at-rule.at-root.scss' ]
4242
43+ describe ' @include' , ->
44+ it ' tokenizes it correctly' , ->
45+ {tokens } = grammar .tokenizeLine ' @include'
46+
47+ expect (tokens[0 ]).toEqual value : ' @' , scopes : [' source.css.scss' , ' meta.at-rule.include.scss' , ' keyword.control.at-rule.include.scss' , ' punctuation.definition.keyword.scss' ]
48+ expect (tokens[1 ]).toEqual value : ' include' , scopes : [' source.css.scss' , ' meta.at-rule.include.scss' , ' keyword.control.at-rule.include.scss' ]
49+
50+ {tokens } = grammar .tokenizeLine ' @include media{}'
51+
52+ expect (tokens[0 ]).toEqual value : ' @' , scopes : [' source.css.scss' , ' meta.at-rule.include.scss' , ' keyword.control.at-rule.include.scss' , ' punctuation.definition.keyword.scss' ]
53+ expect (tokens[1 ]).toEqual value : ' include' , scopes : [' source.css.scss' , ' meta.at-rule.include.scss' , ' keyword.control.at-rule.include.scss' ]
54+ expect (tokens[3 ]).toEqual value : ' media' , scopes : [' source.css.scss' , ' meta.at-rule.include.scss' , ' entity.name.function.scss' ]
55+ expect (tokens[4 ]).toEqual value : ' {' , scopes : [' source.css.scss' , ' meta.property-list.scss' , ' punctuation.section.property-list.begin.bracket.curly.scss' ]
56+
57+ {tokens } = grammar .tokenizeLine ' @include media($width: 100px){}'
58+
59+ expect (tokens[3 ]).toEqual value : ' media' , scopes : [' source.css.scss' , ' meta.at-rule.include.scss' , ' entity.name.function.scss' ]
60+ expect (tokens[4 ]).toEqual value : ' (' , scopes : [' source.css.scss' , ' meta.at-rule.include.scss' , ' punctuation.definition.parameters.begin.bracket.round.scss' ]
61+ expect (tokens[6 ]).toEqual value : ' :' , scopes : [' source.css.scss' , ' meta.at-rule.include.scss' , ' punctuation.definition' ]
62+ expect (tokens[10 ]).toEqual value : ' )' , scopes : [' source.css.scss' , ' meta.at-rule.include.scss' , ' punctuation.definition.parameters.end.bracket.round.scss' ]
63+ expect (tokens[11 ]).toEqual value : ' {' , scopes : [' source.css.scss' , ' meta.property-list.scss' , ' punctuation.section.property-list.begin.bracket.curly.scss' ]
64+
4365 describe ' @mixin' , ->
4466 it ' tokenizes solitary @mixin correctly' , ->
4567 {tokens } = grammar .tokenizeLine ' @mixin'
0 commit comments