diff options
author | maheshgudi | 2016-08-03 15:16:08 +0530 |
---|---|---|
committer | maheshgudi | 2016-08-03 15:16:08 +0530 |
commit | 40fbb5d8f1d4174f7d7e2d4723e9fbfc40040dcb (patch) | |
tree | 7885b674d2deb064137f1f501ed1707bfd54daf8 /yaksh/bash_stdio_evaluator.py | |
parent | 1b71abc9437d721a41f017db406f312755f5a4c4 (diff) | |
parent | 2b03aeb36fa333ea1644a248c742cf0c1df12a5f (diff) | |
download | online_test-40fbb5d8f1d4174f7d7e2d4723e9fbfc40040dcb.tar.gz online_test-40fbb5d8f1d4174f7d7e2d4723e9fbfc40040dcb.tar.bz2 online_test-40fbb5d8f1d4174f7d7e2d4723e9fbfc40040dcb.zip |
rebase changes with stdio evaluator
Diffstat (limited to 'yaksh/bash_stdio_evaluator.py')
-rw-r--r-- | yaksh/bash_stdio_evaluator.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/yaksh/bash_stdio_evaluator.py b/yaksh/bash_stdio_evaluator.py index 5431e5d..56f2e35 100644 --- a/yaksh/bash_stdio_evaluator.py +++ b/yaksh/bash_stdio_evaluator.py @@ -6,7 +6,7 @@ from os.path import isfile #local imports from code_evaluator import CodeEvaluator from stdio_evaluator import Evaluator - +from file_utils import copy_files, delete_files class BashStdioEvaluator(CodeEvaluator): """Evaluates Bash StdIO based code""" @@ -18,8 +18,13 @@ class BashStdioEvaluator(CodeEvaluator): def teardown(self): super(BashStdioEvaluator, self).teardown() os.remove(self.submit_code_path) + if self.files: + delete_files(self.files) - def compile_code(self, user_answer, expected_input, expected_output): + def compile_code(self, user_answer, file_paths, expected_input, expected_output): + self.files = [] + if file_paths: + self.files = copy_files(file_paths) if not isfile(self.submit_code_path): msg = "No file at %s or Incorrect path" % self.submit_code_path return False, msg @@ -27,7 +32,7 @@ class BashStdioEvaluator(CodeEvaluator): user_answer = user_answer.replace("\r", "") self.write_to_submit_code_file(self.submit_code_path, user_answer) - def check_code(self, user_answer, expected_input, expected_output): + def check_code(self, user_answer, file_paths, expected_input, expected_output): success = False expected_input = str(expected_input).replace('\r', '') proc = subprocess.Popen("bash ./Test.sh", |