Skip to content
This repository was archived by the owner on Dec 15, 2022. It is now read-only.

Commit 792fa61

Browse files
committed
SQL: Add tests for new behaviours
- Check for case insensitivity which will allow for `Select`, `select` and sPoNgebOB notation keyword starters - Check for starting round brackets as it may also be used at times
1 parent b82f751 commit 792fa61

File tree

1 file changed

+19
-1
lines changed

1 file changed

+19
-1
lines changed

spec/php-spec.coffee

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2931,7 +2931,7 @@ describe 'PHP grammar', ->
29312931
expect(tokens[11]).toEqual value: 'a', scopes: ['source.php', 'variable.other.php']
29322932
expect(tokens[12]).toEqual value: ';', scopes: ['source.php', 'punctuation.terminator.expression.php']
29332933

2934-
it 'should tokenize embedded SQL in a string', ->
2934+
fit 'should tokenize embedded SQL in a string', ->
29352935
waitsForPromise ->
29362936
atom.packages.activatePackage('language-sql')
29372937

@@ -2948,6 +2948,24 @@ describe 'PHP grammar', ->
29482948
expect(tokens[2]).toEqual value: ' something', scopes: ['source.php', scope, 'source.sql.embedded.php']
29492949
expect(tokens[3]).toEqual value: delim, scopes: ['source.php', scope, 'punctuation.definition.string.end.php']
29502950

2951+
{tokens} = grammar.tokenizeLine "#{delim}sEleCT something#{delim}"
2952+
2953+
# Case insensitive
2954+
expect(tokens[0]).toEqual value: delim, scopes: ['source.php', scope, 'punctuation.definition.string.begin.php']
2955+
expect(tokens[1]).toEqual value: 'sEleCT', scopes: ['source.php', scope, 'source.sql.embedded.php', 'keyword.other.DML.sql']
2956+
expect(tokens[2]).toEqual value: ' something', scopes: ['source.php', scope, 'source.sql.embedded.php']
2957+
expect(tokens[3]).toEqual value: delim, scopes: ['source.php', scope, 'punctuation.definition.string.end.php']
2958+
2959+
{tokens} = grammar.tokenizeLine "#{delim}(select something)#{delim}"
2960+
2961+
# Surrounded by brackets
2962+
expect(tokens[0]).toEqual value: delim, scopes: ['source.php', scope, 'punctuation.definition.string.begin.php']
2963+
expect(tokens[1]).toEqual value: '(', scopes: ['source.php', scope, 'source.sql.embedded.php', 'punctuation.definition.section.bracket.round.begin.sql']
2964+
expect(tokens[2]).toEqual value: 'select', scopes: ['source.php', scope, 'source.sql.embedded.php', 'keyword.other.DML.sql']
2965+
expect(tokens[3]).toEqual value: ' something', scopes: ['source.php', scope, 'source.sql.embedded.php']
2966+
expect(tokens[4]).toEqual value: ')', scopes: ['source.php', scope, 'source.sql.embedded.php', 'punctuation.definition.section.bracket.round.end.sql']
2967+
expect(tokens[5]).toEqual value: delim, scopes: ['source.php', scope, 'punctuation.definition.string.end.php']
2968+
29512969
lines = grammar.tokenizeLines """
29522970
#{delim}SELECT something
29532971
-- uh oh a comment SELECT#{delim}

0 commit comments

Comments
 (0)