diff options
Diffstat (limited to 'yaksh')
-rw-r--r-- | yaksh/bash_code_evaluator.py | 18 | ||||
-rw-r--r-- | yaksh/cpp_code_evaluator.py | 12 | ||||
-rw-r--r-- | yaksh/java_code_evaluator.py | 12 | ||||
-rw-r--r-- | yaksh/python_assertion_evaluator.py | 12 | ||||
-rw-r--r-- | yaksh/python_stdout_evaluator.py | 12 | ||||
-rw-r--r-- | yaksh/scilab_code_evaluator.py | 12 |
6 files changed, 31 insertions, 47 deletions
diff --git a/yaksh/bash_code_evaluator.py b/yaksh/bash_code_evaluator.py index c602ceb..bce7f07 100644 --- a/yaksh/bash_code_evaluator.py +++ b/yaksh/bash_code_evaluator.py @@ -9,7 +9,7 @@ import importlib # local imports from code_evaluator import CodeEvaluator -from copy_delete_files import CopyDeleteFiles +from file_utils import copy_files, delete_files class BashCodeEvaluator(CodeEvaluator): @@ -23,9 +23,8 @@ class BashCodeEvaluator(CodeEvaluator): # Delete the created file. super(BashCodeEvaluator, self).teardown() os.remove(self.submit_code_path) - if self.files_list: - file_delete = CopyDeleteFiles() - file_delete.delete_files(self.files_list) + if self.files: + delete_files(self.files) def check_code(self, user_answer, file_paths, test_case): """ Function validates student script using instructor script as @@ -57,10 +56,9 @@ class BashCodeEvaluator(CodeEvaluator): clean_ref_code_path, clean_test_case_path = \ self._set_test_code_file_path(get_ref_path, get_test_case_path) - self.files_list = [] + self.files = [] if file_paths: - file_copy = CopyDeleteFiles() - self.files_list = file_copy.copy_files(file_paths) + self.files = copy_files(file_paths) if not isfile(clean_ref_code_path): msg = "No file at %s or Incorrect path" % clean_ref_code_path return False, msg @@ -123,12 +121,8 @@ class BashCodeEvaluator(CodeEvaluator): stderr=subprocess.PIPE ) proc, inst_stdout, inst_stderr = ret - if self.files_list: - file_delete = CopyDeleteFiles() - file_delete.delete_files(self.files_list) if file_paths: - file_copy = CopyDeleteFiles() - self.files_list = file_copy.copy_files(file_paths) + self.files = copy_files(file_paths) args = [self.submit_code_path] + \ [x for x in test_case.split()] ret = self._run_command(args, diff --git a/yaksh/cpp_code_evaluator.py b/yaksh/cpp_code_evaluator.py index 29b24d5..c65242d 100644 --- a/yaksh/cpp_code_evaluator.py +++ b/yaksh/cpp_code_evaluator.py @@ -8,7 +8,7 @@ import importlib # local imports from code_evaluator import CodeEvaluator -from copy_delete_files import CopyDeleteFiles +from file_utils import copy_files, delete_files class CppCodeEvaluator(CodeEvaluator): @@ -27,9 +27,8 @@ class CppCodeEvaluator(CodeEvaluator): os.remove(self.ref_output_path) if os.path.exists(self.user_output_path): os.remove(self.user_output_path) - if self.files_list: - file_delete = CopyDeleteFiles() - file_delete.delete_files(self.files_list) + if self.files: + delete_files(self.files) def set_file_paths(self): user_output_path = os.getcwd() + '/output' @@ -47,7 +46,7 @@ class CppCodeEvaluator(CodeEvaluator): return compile_command, compile_main def compile_code(self, user_answer, file_paths, test_case): - self.files_list = [] + self.files = [] if self.compiled_user_answer and self.compiled_test_code: return None else: @@ -55,8 +54,7 @@ class CppCodeEvaluator(CodeEvaluator): clean_ref_code_path, clean_test_case_path = \ self._set_test_code_file_path(ref_code_path) if file_paths: - file_copy = CopyDeleteFiles() - self.files_list = file_copy.copy_files(file_paths) + self.files = copy_files(file_paths) if not isfile(clean_ref_code_path): msg = "No file at %s or Incorrect path" % clean_ref_code_path return False, msg diff --git a/yaksh/java_code_evaluator.py b/yaksh/java_code_evaluator.py index dde2ec2..ff76317 100644 --- a/yaksh/java_code_evaluator.py +++ b/yaksh/java_code_evaluator.py @@ -8,7 +8,7 @@ import importlib # local imports from code_evaluator import CodeEvaluator -from copy_delete_files import CopyDeleteFiles +from file_utils import copy_files, delete_files class JavaCodeEvaluator(CodeEvaluator): @@ -27,9 +27,8 @@ class JavaCodeEvaluator(CodeEvaluator): os.remove(self.user_output_path) if os.path.exists(self.ref_output_path): os.remove(self.ref_output_path) - if self.files_list: - file_delete = CopyDeleteFiles() - file_delete.delete_files(self.files_list) + if self.files: + delete_files(self.files) def get_commands(self, clean_ref_code_path, user_code_directory): compile_command = 'javac {0}'.format(self.submit_code_path), @@ -44,7 +43,7 @@ class JavaCodeEvaluator(CodeEvaluator): return output_path def compile_code(self, user_answer, file_paths, test_case): - self.files_list = [] + self.files = [] if self.compiled_user_answer and self.compiled_test_code: return None else: @@ -52,8 +51,7 @@ class JavaCodeEvaluator(CodeEvaluator): clean_ref_code_path, clean_test_case_path = \ self._set_test_code_file_path(ref_code_path) if file_paths: - file_copy = CopyDeleteFiles() - self.files_list = file_copy.copy_files(file_paths) + self.files = copy_files(file_paths) if not isfile(clean_ref_code_path): msg = "No file at %s or Incorrect path" % clean_ref_code_path return False, msg diff --git a/yaksh/python_assertion_evaluator.py b/yaksh/python_assertion_evaluator.py index 3e98f08..04a4e69 100644 --- a/yaksh/python_assertion_evaluator.py +++ b/yaksh/python_assertion_evaluator.py @@ -7,7 +7,7 @@ import importlib # local imports from code_evaluator import CodeEvaluator, TimeoutException -from copy_delete_files import CopyDeleteFiles +from file_utils import copy_files, delete_files class PythonAssertionEvaluator(CodeEvaluator): @@ -20,15 +20,13 @@ class PythonAssertionEvaluator(CodeEvaluator): def teardown(self): super(PythonAssertionEvaluator, self).teardown() # Delete the created file. - if self.files_list: - file_delete = CopyDeleteFiles() - file_delete.delete_files(self.files_list) + if self.files: + delete_files(self.files) def compile_code(self, user_answer, file_paths, test_case): - self.files_list = [] + self.files = [] if file_paths: - file_copy = CopyDeleteFiles() - self.files_list = file_copy.copy_files(file_paths) + self.files = copy_files(file_paths) if self.exec_scope: return None else: diff --git a/yaksh/python_stdout_evaluator.py b/yaksh/python_stdout_evaluator.py index fa8d6c6..8f69b24 100644 --- a/yaksh/python_stdout_evaluator.py +++ b/yaksh/python_stdout_evaluator.py @@ -8,7 +8,7 @@ from contextlib import contextmanager # local imports from code_evaluator import CodeEvaluator -from copy_delete_files import CopyDeleteFiles +from file_utils import copy_files, delete_files @contextmanager @@ -29,15 +29,13 @@ class PythonStdoutEvaluator(CodeEvaluator): def teardown(self): super(PythonStdoutEvaluator, self).teardown() # Delete the created file. - if self.files_list: - file_delete = CopyDeleteFiles() - file_delete.delete_files(self.files_list) + if self.files: + delete_files(self.files) def compile_code(self, user_answer, file_paths, expected_output): - self.files_list = [] + self.files = [] if file_paths: - file_copy = CopyDeleteFiles() - self.files_list = file_copy.copy_files(file_paths) + self.files = copy_files(file_paths) if hasattr(self, 'output_value'): return None else: diff --git a/yaksh/scilab_code_evaluator.py b/yaksh/scilab_code_evaluator.py index 5f38087..53fa343 100644 --- a/yaksh/scilab_code_evaluator.py +++ b/yaksh/scilab_code_evaluator.py @@ -8,7 +8,7 @@ import importlib # local imports from code_evaluator import CodeEvaluator -from copy_delete_files import CopyDeleteFiles +from file_utils import copy_files, delete_files class ScilabCodeEvaluator(CodeEvaluator): @@ -22,15 +22,13 @@ class ScilabCodeEvaluator(CodeEvaluator): super(ScilabCodeEvaluator, self).teardown() # Delete the created file. os.remove(self.submit_code_path) - if self.files_list: - file_delete = CopyDeleteFiles() - file_delete.delete_files(self.files_list) + if self.files: + delete_files(self.files) def check_code(self, user_answer, file_paths, test_case): - self.files_list = [] + self.files = [] if file_paths: - file_copy = CopyDeleteFiles() - self.files_list = file_copy.copy_files(file_paths) + self.files = copy_files(file_paths) ref_code_path = test_case clean_ref_path, clean_test_case_path = \ self._set_test_code_file_path(ref_code_path) |