@@ -99,6 +99,18 @@ func TestBasics(t *testing.T) {
9999 {Kind : token .EOF , Start : 9 , End : 9 },
100100 },
101101 },
102+ {
103+ name : "variable no equals interp" ,
104+ src : "@var {{ test }}" ,
105+ want : []token.Token {
106+ {Kind : token .At , Start : 0 , End : 1 },
107+ {Kind : token .Ident , Start : 1 , End : 4 },
108+ {Kind : token .OpenInterp , Start : 5 , End : 7 },
109+ {Kind : token .Ident , Start : 8 , End : 12 },
110+ {Kind : token .CloseInterp , Start : 13 , End : 15 },
111+ {Kind : token .EOF , Start : 15 , End : 15 },
112+ },
113+ },
102114 {
103115 name : "name" ,
104116 src : "@name = MyRequest" ,
@@ -110,6 +122,19 @@ func TestBasics(t *testing.T) {
110122 {Kind : token .EOF , Start : 17 , End : 17 },
111123 },
112124 },
125+ {
126+ name : "name equals interp" ,
127+ src : "@name = {{ something }}" ,
128+ want : []token.Token {
129+ {Kind : token .At , Start : 0 , End : 1 },
130+ {Kind : token .Name , Start : 1 , End : 5 },
131+ {Kind : token .Eq , Start : 6 , End : 7 },
132+ {Kind : token .OpenInterp , Start : 8 , End : 10 },
133+ {Kind : token .Ident , Start : 11 , End : 20 },
134+ {Kind : token .CloseInterp , Start : 21 , End : 23 },
135+ {Kind : token .EOF , Start : 23 , End : 23 },
136+ },
137+ },
113138 {
114139 name : "name no equals" ,
115140 src : "@name MyRequest" ,
@@ -120,6 +145,18 @@ func TestBasics(t *testing.T) {
120145 {Kind : token .EOF , Start : 15 , End : 15 },
121146 },
122147 },
148+ {
149+ name : "name no equals interp" ,
150+ src : "@name {{ something }}" ,
151+ want : []token.Token {
152+ {Kind : token .At , Start : 0 , End : 1 },
153+ {Kind : token .Name , Start : 1 , End : 5 },
154+ {Kind : token .OpenInterp , Start : 6 , End : 8 },
155+ {Kind : token .Ident , Start : 9 , End : 18 },
156+ {Kind : token .CloseInterp , Start : 19 , End : 21 },
157+ {Kind : token .EOF , Start : 21 , End : 21 },
158+ },
159+ },
123160 {
124161 name : "hash request variable" ,
125162 src : "# @var = test" ,
@@ -131,6 +168,41 @@ func TestBasics(t *testing.T) {
131168 {Kind : token .EOF , Start : 13 , End : 13 },
132169 },
133170 },
171+ {
172+ name : "hash request variable no equals" ,
173+ src : "# @var test" ,
174+ want : []token.Token {
175+ {Kind : token .At , Start : 2 , End : 3 },
176+ {Kind : token .Ident , Start : 3 , End : 6 },
177+ {Kind : token .Text , Start : 7 , End : 11 },
178+ {Kind : token .EOF , Start : 11 , End : 11 },
179+ },
180+ },
181+ {
182+ name : "hash request variable interp" ,
183+ src : "# @var = {{ test }}" ,
184+ want : []token.Token {
185+ {Kind : token .At , Start : 2 , End : 3 },
186+ {Kind : token .Ident , Start : 3 , End : 6 },
187+ {Kind : token .Eq , Start : 7 , End : 8 },
188+ {Kind : token .OpenInterp , Start : 9 , End : 11 },
189+ {Kind : token .Ident , Start : 12 , End : 16 },
190+ {Kind : token .CloseInterp , Start : 17 , End : 19 },
191+ {Kind : token .EOF , Start : 19 , End : 19 },
192+ },
193+ },
194+ {
195+ name : "hash request variable interp no equals" ,
196+ src : "# @var {{ test }}" ,
197+ want : []token.Token {
198+ {Kind : token .At , Start : 2 , End : 3 },
199+ {Kind : token .Ident , Start : 3 , End : 6 },
200+ {Kind : token .OpenInterp , Start : 7 , End : 9 },
201+ {Kind : token .Ident , Start : 10 , End : 14 },
202+ {Kind : token .CloseInterp , Start : 15 , End : 17 },
203+ {Kind : token .EOF , Start : 17 , End : 17 },
204+ },
205+ },
134206 {
135207 name : "slash request variable" ,
136208 src : "// @var = test" ,
@@ -143,14 +215,28 @@ func TestBasics(t *testing.T) {
143215 },
144216 },
145217 {
146- name : "slash request variable" ,
147- src : "// @var = test" ,
218+ name : "slash request variable interp " ,
219+ src : "// @var = {{ test }} " ,
148220 want : []token.Token {
149221 {Kind : token .At , Start : 3 , End : 4 },
150222 {Kind : token .Ident , Start : 4 , End : 7 },
151223 {Kind : token .Eq , Start : 8 , End : 9 },
152- {Kind : token .Text , Start : 10 , End : 14 },
153- {Kind : token .EOF , Start : 14 , End : 14 },
224+ {Kind : token .OpenInterp , Start : 10 , End : 12 },
225+ {Kind : token .Ident , Start : 13 , End : 17 },
226+ {Kind : token .CloseInterp , Start : 18 , End : 20 },
227+ {Kind : token .EOF , Start : 20 , End : 20 },
228+ },
229+ },
230+ {
231+ name : "slash request variable interp no equals" ,
232+ src : "// @var {{ test }}" ,
233+ want : []token.Token {
234+ {Kind : token .At , Start : 3 , End : 4 },
235+ {Kind : token .Ident , Start : 4 , End : 7 },
236+ {Kind : token .OpenInterp , Start : 8 , End : 10 },
237+ {Kind : token .Ident , Start : 11 , End : 15 },
238+ {Kind : token .CloseInterp , Start : 16 , End : 18 },
239+ {Kind : token .EOF , Start : 18 , End : 18 },
154240 },
155241 },
156242 {
0 commit comments