...

Source file src/github.com/vektah/gqlparser/lexer/lexer_test.go

Documentation: github.com/vektah/gqlparser/lexer

     1  package lexer
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/vektah/gqlparser/ast"
     7  	"github.com/vektah/gqlparser/parser/testrunner"
     8  )
     9  
    10  func TestLexer(t *testing.T) {
    11  	testrunner.Test(t, "lexer_test.yml", func(t *testing.T, input string) testrunner.Spec {
    12  		l := New(&ast.Source{Input: input, Name: "spec"})
    13  
    14  		ret := testrunner.Spec{}
    15  		for {
    16  			tok, err := l.ReadToken()
    17  
    18  			if err != nil {
    19  				ret.Error = err
    20  				break
    21  			}
    22  
    23  			if tok.Kind == EOF {
    24  				break
    25  			}
    26  
    27  			ret.Tokens = append(ret.Tokens, testrunner.Token{
    28  				Kind:   tok.Kind.Name(),
    29  				Value:  tok.Value,
    30  				Line:   tok.Pos.Line,
    31  				Column: tok.Pos.Column,
    32  				Start:  tok.Pos.Start,
    33  				End:    tok.Pos.End,
    34  				Src:    tok.Pos.Src.Name,
    35  			})
    36  		}
    37  
    38  		return ret
    39  	})
    40  }
    41  

View as plain text