summaryrefslogtreecommitdiff
path: root/yaksh/stdio_evaluator.py
diff options
context:
space:
mode:
Diffstat (limited to 'yaksh/stdio_evaluator.py')
-rw-r--r--yaksh/stdio_evaluator.py11
1 files changed, 8 insertions, 3 deletions
diff --git a/yaksh/stdio_evaluator.py b/yaksh/stdio_evaluator.py
index 932ae7e..5e4ce18 100644
--- a/yaksh/stdio_evaluator.py
+++ b/yaksh/stdio_evaluator.py
@@ -11,10 +11,15 @@ from .compare_stdio import compare_outputs
class StdIOEvaluator(BaseEvaluator):
def evaluate_stdio(self, user_answer, proc, expected_input, expected_output):
success = False
- ip = expected_input.replace(",", " ")
- encoded_input = '{0}\n'.format(ip).encode('utf-8')
try:
- user_output_bytes, output_err_bytes = proc.communicate(encoded_input)
+ if expected_input:
+ ip = expected_input.replace(",", " ")
+ encoded_input = '{0}\n'.format(ip).encode('utf-8')
+ user_output_bytes, output_err_bytes = proc.communicate(
+ encoded_input
+ )
+ else:
+ user_output_bytes, output_err_bytes = proc.communicate()
user_output = user_output_bytes.decode('utf-8')
output_err = output_err_bytes.decode('utf-8')
except TimeoutException: