Skip to content

Commit 2345995

Browse files
committed
Add more tests for expressions
1 parent a98c4f0 commit 2345995

1 file changed

Lines changed: 72 additions & 0 deletions

File tree

expression_test.go

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,78 @@ func TestFindExpressionsInTokens(t *testing.T) {
9191
assertions.False(FindExpressionsInTokens([]Token{token}, []Expression{}))
9292
}
9393

94+
func TestFindComplexExpressionsInTokens(t *testing.T) {
95+
assertions := assert.New(t)
96+
expression := Expression{
97+
Type: "bracket",
98+
Text: "(",
99+
}
100+
101+
expression2 := Expression{
102+
Type: "bracket",
103+
Text: ")",
104+
}
105+
106+
token := Token{
107+
Type: "bracket",
108+
Position: 1,
109+
Text: "{",
110+
}
111+
token2 := Token{
112+
Type: "bracket",
113+
Position: 2,
114+
Text: "(",
115+
}
116+
token3 := Token{
117+
Type: "bracket",
118+
Position: 3,
119+
Text: ")",
120+
}
121+
token4 := Token{
122+
Type: "bracket",
123+
Position: 4,
124+
Text: "{",
125+
}
126+
127+
assertions.True(FindExpressionsInTokens([]Token{token, token2, token3, token4}, []Expression{expression, expression2}))
128+
}
129+
130+
func TestDoNotFindComplexExpressionsInTokens(t *testing.T) {
131+
assertions := assert.New(t)
132+
expression := Expression{
133+
Type: "bracket",
134+
Text: "{",
135+
}
136+
137+
expression2 := Expression{
138+
Type: "keyword",
139+
Text: "var",
140+
}
141+
142+
token := Token{
143+
Type: "bracket",
144+
Position: 1,
145+
Text: "{",
146+
}
147+
token2 := Token{
148+
Type: "bracket",
149+
Position: 2,
150+
Text: "(",
151+
}
152+
token3 := Token{
153+
Type: "bracket",
154+
Position: 3,
155+
Text: ")",
156+
}
157+
token4 := Token{
158+
Type: "bracket",
159+
Position: 4,
160+
Text: "{",
161+
}
162+
163+
assertions.False(FindExpressionsInTokens([]Token{token, token2, token3, token4}, []Expression{expression, expression2}))
164+
}
165+
94166
func TestMatchToken(t *testing.T) {
95167
assertions := assert.New(t)
96168

0 commit comments

Comments
 (0)