Leonardo Di Donato 8 лет назад
Родитель
Сommit
c38e842ac0
1 измененных файлов с 38 добавлено и 0 удалено
  1. 38 0
      listener_test.go

+ 38 - 0
listener_test.go

@@ -0,0 +1,38 @@
+package urn
+
+import (
+	"bufio"
+	"fmt"
+	"os"
+	"testing"
+
+	"github.com/antlr/antlr4/runtime/Go/antlr"
+	"github.com/leodido/go-urn/grammar"
+)
+
+func TestX(t *testing.T) {
+	inFile, _ := os.Open("testdata/00.urn")
+	defer inFile.Close()
+	scanner := bufio.NewScanner(inFile)
+	scanner.Split(bufio.ScanLines)
+
+	for scanner.Scan() {
+		input := scanner.Text()
+
+		stream := antlr.NewInputStream(input)
+		lexer := grammar.NewUrnLexer(stream)
+		tokens := antlr.NewCommonTokenStream(lexer, 0)
+
+		parser := grammar.NewUrnParser(tokens)
+		// parser.AddErrorListener(antlr.NewDiagnosticErrorListener(true))
+
+		urn := Urn{}
+		parser.AddParseListener(NewListener(&urn))
+
+		// parser.BuildParseTrees = true
+
+		parser.Urn()
+
+		fmt.Printf("%+v\n", urn)
+	}
+}