@@ -15,7 +15,7 @@ import dedent from '../../jsutils/dedent';
15
15
import inspect from '../../jsutils/inspect' ;
16
16
import { GraphQLError } from '../../error' ;
17
17
import { Source } from '../source' ;
18
- import { createLexer , TokenKind } from '../lexer' ;
18
+ import { createLexer , TokenKind , isPunctuatorToken } from '../lexer' ;
19
19
20
20
function lexOne ( str ) {
21
21
const lexer = createLexer ( new Source ( str ) ) ;
@@ -766,3 +766,31 @@ describe('Lexer', () => {
766
766
] ) ;
767
767
} ) ;
768
768
} ) ;
769
+
770
+ describe ( 'isPunctuatorToken' , ( ) => {
771
+ it ( 'returns true for punctuator tokens' , ( ) => {
772
+ expect ( isPunctuatorToken ( lexOne ( '!' ) ) ) . to . equal ( true ) ;
773
+ expect ( isPunctuatorToken ( lexOne ( '$' ) ) ) . to . equal ( true ) ;
774
+ expect ( isPunctuatorToken ( lexOne ( '&' ) ) ) . to . equal ( true ) ;
775
+ expect ( isPunctuatorToken ( lexOne ( '(' ) ) ) . to . equal ( true ) ;
776
+ expect ( isPunctuatorToken ( lexOne ( ')' ) ) ) . to . equal ( true ) ;
777
+ expect ( isPunctuatorToken ( lexOne ( '...' ) ) ) . to . equal ( true ) ;
778
+ expect ( isPunctuatorToken ( lexOne ( ':' ) ) ) . to . equal ( true ) ;
779
+ expect ( isPunctuatorToken ( lexOne ( '=' ) ) ) . to . equal ( true ) ;
780
+ expect ( isPunctuatorToken ( lexOne ( '@' ) ) ) . to . equal ( true ) ;
781
+ expect ( isPunctuatorToken ( lexOne ( '[' ) ) ) . to . equal ( true ) ;
782
+ expect ( isPunctuatorToken ( lexOne ( ']' ) ) ) . to . equal ( true ) ;
783
+ expect ( isPunctuatorToken ( lexOne ( '{' ) ) ) . to . equal ( true ) ;
784
+ expect ( isPunctuatorToken ( lexOne ( '|' ) ) ) . to . equal ( true ) ;
785
+ expect ( isPunctuatorToken ( lexOne ( '}' ) ) ) . to . equal ( true ) ;
786
+ } ) ;
787
+
788
+ it ( 'returns false for non-punctuator tokens' , ( ) => {
789
+ expect ( isPunctuatorToken ( lexOne ( '' ) ) ) . to . equal ( false ) ;
790
+ expect ( isPunctuatorToken ( lexOne ( 'name' ) ) ) . to . equal ( false ) ;
791
+ expect ( isPunctuatorToken ( lexOne ( '1' ) ) ) . to . equal ( false ) ;
792
+ expect ( isPunctuatorToken ( lexOne ( '3.14' ) ) ) . to . equal ( false ) ;
793
+ expect ( isPunctuatorToken ( lexOne ( '"str"' ) ) ) . to . equal ( false ) ;
794
+ expect ( isPunctuatorToken ( lexOne ( '"""str"""' ) ) ) . to . equal ( false ) ;
795
+ } ) ;
796
+ } ) ;
0 commit comments