This commit is contained in:
Eli Bendersky 2015-02-03 16:16:20 -08:00
commit a901694ba2

View file

@ -1046,6 +1046,20 @@ class TestEvaluator(unittest.TestCase):
''') ''')
self.assertEqual(e.evaluate('foo(1, 2, 3)'), 1500) self.assertEqual(e.evaluate('foo(1, 2, 3)'), 1500)
def test_assignments(self):
e = KaleidoscopeEvaluator()
e.evaluate('def binary : 1 (x y) y')
e.evaluate('''
def foo(a b)
var s, p, r in
s = a + b :
p = a * b :
r = s + 100 * p :
r
''')
self.assertEqual(e.evaluate('foo(2, 3)'), 605)
self.assertEqual(e.evaluate('foo(10, 20)'), 20030)
if __name__ == '__main__': if __name__ == '__main__':
kalei = KaleidoscopeEvaluator() kalei = KaleidoscopeEvaluator()