From d29fed213caccc7bf2f66ed7a11b94b4bbcac3d1 Mon Sep 17 00:00:00 2001
From: Timotej Lazar <timotej.lazar@fri.uni-lj.si>
Date: Thu, 6 Oct 2016 14:40:16 +0200
Subject: Python: add support for auxiliary code (like for Prolog)

---
 python/problems/comprehensions/morse/common.py | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

(limited to 'python/problems/comprehensions/morse')

diff --git a/python/problems/comprehensions/morse/common.py b/python/problems/comprehensions/morse/common.py
index 785862e..4b112cc 100644
--- a/python/problems/comprehensions/morse/common.py
+++ b/python/problems/comprehensions/morse/common.py
@@ -59,7 +59,7 @@ hint_type = {
     'has_loop': Hint('has_loop')
 }
 
-def test(python, code):
+def test(python, code, aux_code=''):
     func_name = 'txt2morse'
     tokens = get_tokens(code)
     ast = get_ast(code)
@@ -77,7 +77,7 @@ def test(python, code):
                for l in in_out]
     test_out = [l[1] for l in in_out]
 
-    answers = python(code=code, inputs=test_in, timeout=1.0)
+    answers = python(code=aux_code+code, inputs=test_in, timeout=1.0)
     n_correct = 0
     tin, tout = None, None
     for i, (ans, to) in enumerate(zip(answers, test_out)):
@@ -102,11 +102,11 @@ def test(python, code):
     return passed, hints
 
 
-def hint(python, code):
+def hint(python, code, aux_code=''):
     tokens = get_tokens(code)
 
     # run one test first to see if there are any exceptions
-    answer = python(code=code, inputs=[(None, None)], timeout=1.0)
+    answer = python(code=aux_code+code, inputs=[(None, None)], timeout=1.0)
     exc = get_exception_desc(answer[0][3])
     if exc: return exc
 
-- 
cgit v1.2.1