@@ -451,6 +451,21 @@ describe "Javascript grammar", ->
451
451
expect (tokens[4 ]).toEqual value : ' }' , scopes : [' source.js' , ' string.quoted.template.js' , ' source.js.embedded.source' , ' punctuation.section.embedded.js' ]
452
452
expect (tokens[5 ]).toEqual value : ' `' , scopes : [' source.js' , ' string.quoted.template.js' , ' punctuation.definition.string.end.js' ]
453
453
454
+ {tokens } = grammar .tokenizeLine (' `hey ${() => {return hi;}}`' )
455
+ expect (tokens[0 ]).toEqual value : ' `' , scopes : [' source.js' , ' string.quoted.template.js' , ' punctuation.definition.string.begin.js' ]
456
+ expect (tokens[1 ]).toEqual value : ' hey ' , scopes : [' source.js' , ' string.quoted.template.js' ]
457
+ expect (tokens[2 ]).toEqual value : ' ${' , scopes : [' source.js' , ' string.quoted.template.js' , ' source.js.embedded.source' , ' punctuation.section.embedded.js' ]
458
+ expect (tokens[3 ]).toEqual value : ' (' , scopes : [' source.js' , ' string.quoted.template.js' , ' source.js.embedded.source' , ' meta.function.arrow.js' , ' punctuation.definition.parameters.begin.js' ]
459
+ expect (tokens[4 ]).toEqual value : ' )' , scopes : [' source.js' , ' string.quoted.template.js' , ' source.js.embedded.source' , ' meta.function.arrow.js' , ' punctuation.definition.parameters.end.js' ]
460
+ expect (tokens[5 ]).toEqual value : ' =>' , scopes : [' source.js' , ' string.quoted.template.js' , ' source.js.embedded.source' , ' meta.function.arrow.js' , ' storage.type.arrow.js' ]
461
+ expect (tokens[7 ]).toEqual value : ' {' , scopes : [' source.js' , ' string.quoted.template.js' , ' source.js.embedded.source' , ' meta.brace.curly.js' ]
462
+ expect (tokens[8 ]).toEqual value : ' return' , scopes : [' source.js' , ' string.quoted.template.js' , ' source.js.embedded.source' , ' keyword.control.js' ]
463
+ expect (tokens[9 ]).toEqual value : ' hi' , scopes : [' source.js' , ' string.quoted.template.js' , ' source.js.embedded.source' ]
464
+ expect (tokens[10 ]).toEqual value : ' ;' , scopes : [' source.js' , ' string.quoted.template.js' , ' source.js.embedded.source' , ' punctuation.terminator.statement.js' ]
465
+ expect (tokens[11 ]).toEqual value : ' }' , scopes : [' source.js' , ' string.quoted.template.js' , ' source.js.embedded.source' , ' meta.brace.curly.js' ]
466
+ expect (tokens[12 ]).toEqual value : ' }' , scopes : [' source.js' , ' string.quoted.template.js' , ' source.js.embedded.source' , ' punctuation.section.embedded.js' ]
467
+ expect (tokens[13 ]).toEqual value : ' `' , scopes : [' source.js' , ' string.quoted.template.js' , ' punctuation.definition.string.end.js' ]
468
+
454
469
describe " ES6 class" , ->
455
470
it " tokenizes class" , ->
456
471
{tokens } = grammar .tokenizeLine (' class MyClass' )
0 commit comments