diff --git a/mytests/test_general.py b/mytests/test_general.py index 2bda574..158b642 100644 --- a/mytests/test_general.py +++ b/mytests/test_general.py @@ -55,3 +55,40 @@ ya = y area assert w_model.getvalue("xa").value == 25 assert w_model.getvalue("ya").value == 3.1415 + + +def test_rotation(): + w_model, interpreter = eval_test_program("rotations") + + ast = parse(""" +x = "Hallo" +y = rotate(x, 2) +z = rotate(x, 4) +""") + interpreter.eval(ast, w_model) + + assert w_model.getvalue("y").value == "lloHa" + assert w_model.getvalue("z").value == "oHall" + + +def test_numbers(): + w_model, interpreter = eval_test_program("numbers") + + ast = parse(""" +x = generate_list(5) + +def function(n): + n * n + +y = generate_list(5) + +def function(n): + n + 1 + +z = generate_list(5) +""") + interpreter.eval(ast, w_model) + + assert w_model.getvalue("x").value == "1 2 3 4 5" + assert w_model.getvalue("y").value == "1 4 9 16 25" + assert w_model.getvalue("z").value == "2 3 4 5 6"