diff options
author | Timotej Lazar <timotej.lazar@fri.uni-lj.si> | 2016-10-06 14:40:16 +0200 |
---|---|---|
committer | Timotej Lazar <timotej.lazar@fri.uni-lj.si> | 2016-10-06 14:41:03 +0200 |
commit | d29fed213caccc7bf2f66ed7a11b94b4bbcac3d1 (patch) | |
tree | 04f96da9e5a4ea6572db9700907959eae295305b /python/problems/lists_and_for/prefix | |
parent | 969812724912512740dbf037940a9e6770df19ed (diff) |
Python: add support for auxiliary code (like for Prolog)
Diffstat (limited to 'python/problems/lists_and_for/prefix')
-rw-r--r-- | python/problems/lists_and_for/prefix/common.py | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/python/problems/lists_and_for/prefix/common.py b/python/problems/lists_and_for/prefix/common.py index 3cc57fb..9725350 100644 --- a/python/problems/lists_and_for/prefix/common.py +++ b/python/problems/lists_and_for/prefix/common.py @@ -20,7 +20,7 @@ hint_type = { 'final_hint': Hint('final_hint') } -def test(python, code): +def test(python, code, aux_code=''): in_out = [ ('a', ['', 'a']), ('ab', ['', 'a', 'ab']), @@ -31,7 +31,7 @@ def test(python, code): test_in = [(None, s[0]+'\n') for s in in_out] test_out = [str(s[1]) for s in in_out] # List of outputs: (expression result, stdout, stderr, exception). - answers = python(code=code, inputs=test_in, timeout=1.0) + answers = python(code=aux_code+code, inputs=test_in, timeout=1.0) outputs = [ans[1] for ans in answers] n_correct = 0 @@ -51,11 +51,11 @@ def test(python, code): hints.append({'id': 'final_hint'}) 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 |