summaryrefslogtreecommitdiff
path: root/yaksh/scilab_code_evaluator.py
diff options
context:
space:
mode:
authoradityacp2016-12-23 11:43:15 +0530
committeradityacp2016-12-23 11:43:15 +0530
commit1431a5db5894219682ab6ec7240f6d8bd5f06727 (patch)
tree8fa5985c0341dc79338c38569f0aa32283fee573 /yaksh/scilab_code_evaluator.py
parenta64f4841dd321fd69dace8bb8b3a00b187329053 (diff)
downloadonline_test-1431a5db5894219682ab6ec7240f6d8bd5f06727.tar.gz
online_test-1431a5db5894219682ab6ec7240f6d8bd5f06727.tar.bz2
online_test-1431a5db5894219682ab6ec7240f6d8bd5f06727.zip
Remove the use of files in scilab evaluator
Diffstat (limited to 'yaksh/scilab_code_evaluator.py')
-rw-r--r--yaksh/scilab_code_evaluator.py13
1 files changed, 9 insertions, 4 deletions
diff --git a/yaksh/scilab_code_evaluator.py b/yaksh/scilab_code_evaluator.py
index cc3c401..4584a06 100644
--- a/yaksh/scilab_code_evaluator.py
+++ b/yaksh/scilab_code_evaluator.py
@@ -16,7 +16,8 @@ class ScilabCodeEvaluator(BaseEvaluator):
"""Tests the Scilab code obtained from Code Server"""
def __init__(self, metadata, test_case_data):
self.files = []
-
+ self.submit_code_path = ""
+ self.test_code_path = ""
# Set metadata values
self.user_answer = metadata.get('user_answer')
self.file_paths = metadata.get('file_paths')
@@ -28,23 +29,27 @@ class ScilabCodeEvaluator(BaseEvaluator):
def teardown(self):
# Delete the created file.
- os.remove(self.submit_code_path)
+ if os.path.exists(self.submit_code_path):
+ os.remove(self.submit_code_path)
+ if os.path.exists(self.test_code_path):
+ os.remove(self.test_code_path)
if self.files:
delete_files(self.files)
def check_code(self):
self.submit_code_path = self.create_submit_code_file('function.sci')
+ self.test_code_path = self.create_submit_code_file('main.sci')
if self.file_paths:
self.files = copy_files(self.file_paths)
ref_code_path = self.test_case
- clean_ref_path, clean_test_case_path = \
- self._set_test_code_file_path(ref_code_path)
+ clean_ref_path, clean_test_case_path = self.test_code_path, None
self.user_answer, terminate_commands = \
self._remove_scilab_exit(self.user_answer.lstrip())
success = False
test_case_weight = 0.0
self.write_to_submit_code_file(self.submit_code_path, self.user_answer)
+ self.write_to_submit_code_file(self.test_code_path, self.test_case)
# Throw message if there are commmands that terminates scilab
add_err = ""
if terminate_commands: