about summary refs log tree commit diff
path: root/pkg/lang/scanner/scanner_test.go
diff options
context:
space:
mode:
authorMel <einebeere@gmail.com>2022-12-18 01:33:22 +0100
committerMel <einebeere@gmail.com>2022-12-18 01:33:22 +0100
commitacb34cc0edcff326654714ebb19907e51562b384 (patch)
tree0b67b3490a6394786cf4aec234ca5f6cc4d0100e /pkg/lang/scanner/scanner_test.go
parenta43f374ffed8ab5d64acd122702826c9c41b8954 (diff)
downloadjinx-main.tar.zst
jinx-main.zip
Skip comments in scanner HEAD main
Diffstat (limited to 'pkg/lang/scanner/scanner_test.go')
-rw-r--r--pkg/lang/scanner/scanner_test.go23
1 files changed, 23 insertions, 0 deletions
diff --git a/pkg/lang/scanner/scanner_test.go b/pkg/lang/scanner/scanner_test.go
index 4df4b23..fa46152 100644
--- a/pkg/lang/scanner/scanner_test.go
+++ b/pkg/lang/scanner/scanner_test.go
@@ -179,3 +179,26 @@ func TestEmojiInStrings(t *testing.T) {
 
 	require.Equal(t, expected, tokens)
 }
+
+func TestComments(t *testing.T) {
+	src := `
+	# Assignment to 'x'
+	x = 1 # x will be equal to 1
+	`
+
+	s := scanner.New(strings.NewReader(src))
+
+	tokens, err := s.Scan()
+	require.NoError(t, err)
+
+	expected := []token.Token{
+		token.Simple(token.EOL, source.NewLoc(0, 0)),
+		token.New(token.Ident, source.NewLoc(2, 1), "x"),
+		token.Simple(token.Assign, source.NewLoc(2, 3)),
+		token.New(token.Int, source.NewLoc(2, 5), uint64(1)),
+		token.Simple(token.EOL, source.NewLoc(2, 29)),
+		token.Simple(token.EOF, source.NewLoc(3, 1)),
+	}
+
+	require.Equal(t, expected, tokens)
+}