@@ -882,7 +882,7 @@ describe "Javascript grammar", ->
882882 {tokens } = grammar .tokenizeLine (' functionCall(arg1, "test", {a: 123})' )
883883 expect (tokens[0 ]).toEqual value : ' functionCall' , scopes : [' source.js' , ' meta.function-call.js' , ' entity.name.function.js' ]
884884 expect (tokens[1 ]).toEqual value : ' (' , scopes : [' source.js' , ' meta.function-call.js' , ' punctuation.definition.arguments.begin.js' ]
885- expect (tokens[2 ]).toEqual value : ' arg1' , scopes : [' source.js' , ' meta.function-call.js' , ' variable.other.argument.js ' ]
885+ expect (tokens[2 ]).toEqual value : ' arg1' , scopes : [' source.js' , ' meta.function-call.js' ]
886886 expect (tokens[3 ]).toEqual value : ' ,' , scopes : [' source.js' , ' meta.function-call.js' , ' meta.delimiter.object.comma.js' ]
887887 expect (tokens[5 ]).toEqual value : ' "' , scopes : [' source.js' , ' meta.function-call.js' , ' string.quoted.double.js' , ' punctuation.definition.string.begin.js' ]
888888 expect (tokens[6 ]).toEqual value : ' test' , scopes : [' source.js' , ' meta.function-call.js' , ' string.quoted.double.js' ]
@@ -901,21 +901,21 @@ describe "Javascript grammar", ->
901901 expect (tokens[1 ]).toEqual value : ' (' , scopes : [' source.js' , ' meta.function-call.js' , ' punctuation.definition.arguments.begin.js' ]
902902 expect (tokens[2 ]).toEqual value : ' b' , scopes : [' source.js' , ' meta.function-call.js' , ' meta.function-call.js' , ' entity.name.function.js' ]
903903 expect (tokens[3 ]).toEqual value : ' (' , scopes : [' source.js' , ' meta.function-call.js' , ' meta.function-call.js' , ' punctuation.definition.arguments.begin.js' ]
904- expect (tokens[4 ]).toEqual value : ' c' , scopes : [' source.js' , ' meta.function-call.js' , ' meta.function-call.js' , ' variable.other.argument.js ' ]
904+ expect (tokens[4 ]).toEqual value : ' c' , scopes : [' source.js' , ' meta.function-call.js' , ' meta.function-call.js' ]
905905 expect (tokens[5 ]).toEqual value : ' )' , scopes : [' source.js' , ' meta.function-call.js' , ' meta.function-call.js' , ' punctuation.definition.arguments.end.js' ]
906906 expect (tokens[6 ]).toEqual value : ' )' , scopes : [' source.js' , ' meta.function-call.js' , ' punctuation.definition.arguments.end.js' ]
907907
908908 it " tokenizes illegal arguments" , ->
909909 {tokens } = grammar .tokenizeLine (' a(1a)' )
910910 expect (tokens[0 ]).toEqual value : ' a' , scopes : [' source.js' , ' meta.function-call.js' , ' entity.name.function.js' ]
911911 expect (tokens[1 ]).toEqual value : ' (' , scopes : [' source.js' , ' meta.function-call.js' , ' punctuation.definition.arguments.begin.js' ]
912- expect (tokens[2 ]).toEqual value : ' 1a' , scopes : [' source.js' , ' meta.function-call.js' , ' invalid.illegal.js ' ]
912+ expect (tokens[2 ]).toEqual value : ' 1a' , scopes : [' source.js' , ' meta.function-call.js' ]
913913 expect (tokens[3 ]).toEqual value : ' )' , scopes : [' source.js' , ' meta.function-call.js' , ' punctuation.definition.arguments.end.js' ]
914914
915915 {tokens } = grammar .tokenizeLine (' a(123a)' )
916916 expect (tokens[0 ]).toEqual value : ' a' , scopes : [' source.js' , ' meta.function-call.js' , ' entity.name.function.js' ]
917917 expect (tokens[1 ]).toEqual value : ' (' , scopes : [' source.js' , ' meta.function-call.js' , ' punctuation.definition.arguments.begin.js' ]
918- expect (tokens[2 ]).toEqual value : ' 123a' , scopes : [' source.js' , ' meta.function-call.js' , ' invalid.illegal.js ' ]
918+ expect (tokens[2 ]).toEqual value : ' 123a' , scopes : [' source.js' , ' meta.function-call.js' ]
919919 expect (tokens[3 ]).toEqual value : ' )' , scopes : [' source.js' , ' meta.function-call.js' , ' punctuation.definition.arguments.end.js' ]
920920
921921 {tokens } = grammar .tokenizeLine (' a(1.prop)' )
@@ -926,6 +926,22 @@ describe "Javascript grammar", ->
926926 expect (tokens[4 ]).toEqual value : ' prop' , scopes : [' source.js' , ' meta.function-call.js' , ' variable.other.property.js' ]
927927 expect (tokens[5 ]).toEqual value : ' )' , scopes : [' source.js' , ' meta.function-call.js' , ' punctuation.definition.arguments.end.js' ]
928928
929+ it " tokenizes function declaration as an argument" , ->
930+ {tokens } = grammar .tokenizeLine (' a(function b(p) { return p; })' )
931+ expect (tokens[0 ]).toEqual value : ' a' , scopes : [' source.js' , ' meta.function-call.js' , ' entity.name.function.js' ]
932+ expect (tokens[1 ]).toEqual value : ' (' , scopes : [' source.js' , ' meta.function-call.js' , ' punctuation.definition.arguments.begin.js' ]
933+ expect (tokens[2 ]).toEqual value : ' function' , scopes : [' source.js' , ' meta.function-call.js' , ' meta.function.js' , ' storage.type.function.js' ]
934+ expect (tokens[4 ]).toEqual value : ' b' , scopes : [' source.js' , ' meta.function-call.js' , ' meta.function.js' , ' entity.name.function.js' ]
935+ expect (tokens[5 ]).toEqual value : ' (' , scopes : [' source.js' , ' meta.function-call.js' , ' meta.function.js' , ' punctuation.definition.parameters.begin.js' ]
936+ expect (tokens[6 ]).toEqual value : ' p' , scopes : [' source.js' , ' meta.function-call.js' , ' meta.function.js' , ' variable.parameter.function.js' ]
937+ expect (tokens[7 ]).toEqual value : ' )' , scopes : [' source.js' , ' meta.function-call.js' , ' meta.function.js' , ' punctuation.definition.parameters.end.js' ]
938+ expect (tokens[9 ]).toEqual value : ' {' , scopes : [' source.js' , ' meta.function-call.js' , ' meta.brace.curly.js' ]
939+ expect (tokens[11 ]).toEqual value : ' return' , scopes : [' source.js' , ' meta.function-call.js' , ' keyword.control.js' ]
940+ expect (tokens[12 ]).toEqual value : ' p' , scopes : [' source.js' , ' meta.function-call.js' ]
941+ expect (tokens[13 ]).toEqual value : ' ;' , scopes : [' source.js' , ' meta.function-call.js' , ' punctuation.terminator.statement.js' ]
942+ expect (tokens[15 ]).toEqual value : ' }' , scopes : [' source.js' , ' meta.function-call.js' , ' meta.brace.curly.js' ]
943+ expect (tokens[16 ]).toEqual value : ' )' , scopes : [' source.js' , ' meta.function-call.js' , ' punctuation.definition.arguments.end.js' ]
944+
929945 describe " method calls" , ->
930946 it " tokenizes method calls" , ->
931947 {tokens } = grammar .tokenizeLine (' a.b(1+1)' )
0 commit comments