@@ -150,7 +150,7 @@ def test_declare_var(self):
150
150
self .assertEqual (evaluate ("a=5+5" ), 10 )
151
151
152
152
def test_get_declared_var (self ):
153
- self .assertEqual (evaluate ("a" ), 10 )
153
+ self .assertEqual (evaluate ("a=10 \n a " ), 10 )
154
154
155
155
156
156
class TestFunctions (TestCase ):
@@ -177,12 +177,10 @@ def test_funcdef(self):
177
177
self .assertEqual (func_c .name , "c(x,y)" )
178
178
179
179
def test_def_func_call (self ):
180
- evaluate ("f(x,y)=x*y" )
181
- self .assertEqual (evaluate ("f(2,5)" ), 10 )
180
+ self .assertEqual (evaluate ("f(x,y)=x*y \n f(2,5)" ), 10 )
182
181
183
182
def test_def_func_argexpr (self ):
184
- evaluate ("f(x,y)=x*y" )
185
- self .assertEqual (evaluate ("f(2+5, 3*2)" ), 42 )
183
+ self .assertEqual (evaluate ("f(x,y)=x*y \n f(2+5, 3*2)" ), 42 )
186
184
187
185
def test_funcdef_argexpr (self ):
188
186
with self .assertRaises (InvalidSyntaxError ):
@@ -205,16 +203,14 @@ def test_funcdef_no_body(self):
205
203
206
204
class TestLambdas (TestCase ):
207
205
def test_assign_to_var (self ):
208
- func = evaluate ("a=(x)=x+1" )
209
- self .assertIsInstance (func , Function )
210
- self .assertEqual (evaluate ("a(1)" ), 2 )
206
+ self .assertEqual (evaluate ("a=(x)=x+1 \n a(1)" ), 2 )
211
207
212
208
def test_lambda_as_argument (self ):
213
- sum_func = evaluate ("sum(mem)=reduce((x,y)=x+y, mem)" )
214
- range_func = evaluate ( "range(begin, end) = i=begin-1; map ((x)=i=i+1;x+i, malloc(end-begin))" )
215
- self . assertIsInstance ( sum_func , Function )
216
- self . assertIsInstance ( range_func , Function )
217
- self . assertEqual ( evaluate ( "sum(range(0,5)) " ), 10 )
209
+ self . assertEqual ( evaluate ("""
210
+ sum(mem)=reduce ((x,y)=x+y, mem )
211
+ range(begin, end) = i=begin-1; map((x)=i=i+1;x+i, malloc(end-begin) )
212
+ sum(range(0,5) )
213
+ "" " ), 10 )
218
214
219
215
def test_missing_brace_in_arglambda (self ):
220
216
with self .assertRaises (InvalidSyntaxError ):
0 commit comments