From b46364ad0173f59544cb42b97c42136392f805e6 Mon Sep 17 00:00:00 2001 From: prathamesh Date: Thu, 13 Mar 2014 15:54:23 +0530 Subject: Code to test scilab in test_server.py included timeout with scilab command to prevent scilab from running scilab infinitely. --- testapp/code_server.py | 2 +- testapp/test_server.py | 36 +++++++++++++++++++++++++++++++++++- 2 files changed, 36 insertions(+), 2 deletions(-) (limited to 'testapp') diff --git a/testapp/code_server.py b/testapp/code_server.py index c0b92b1..7d9ebd2 100755 --- a/testapp/code_server.py +++ b/testapp/code_server.py @@ -713,7 +713,7 @@ class CodeServer(object): success = False try: cmd = 'printf "lines(0)\nexec(\'{0}\',2);\nquit();"'.format(ref_path) - cmd += ' | scilab-cli -nb' + cmd += ' | timeout 8 scilab-cli -nb' ret = self._run_command(cmd, shell=True, stdout=subprocess.PIPE, diff --git a/testapp/test_server.py b/testapp/test_server.py index 2a17739..31be855 100644 --- a/testapp/test_server.py +++ b/testapp/test_server.py @@ -16,7 +16,6 @@ def check_result(result, check='correct answer'): assert result[0], result[1] assert check in result[1].lower(), result[1] - def test_python(): """Test if server runs Python code as expected.""" src = 'while True: pass' @@ -208,6 +207,40 @@ def test_java(): '/tmp', language="java") check_result(result, 'error') +def test_scilab(): + """Test if server runs java code as expected.""" + src = """ + funcprot(0) +function[c]=add(a,b) + c=a+b; +endfunction + """ + result = code_server.run_code(src, 'scilab_files/test_add.sce', + '/tmp', language="scilab") + check_result(result, 'correct answer') + + src = """ + funcprot(0) +function[c]=add(a,b) + c=a+b; +dis( +endfunction + """ + result = code_server.run_code(src, 'scilab_files/test_add.sce', + '/tmp', language="scilab") + check_result(result, 'error') + + src = """ + funcprot(0) +function[c]=add(a,b) + c=a + while(1==1) + end +endfunction + """ + result = code_server.run_code(src, 'scilab_files/test_add.sce', + '/tmp', language="scilab") + check_result(result, 'error') def test_bash(): """Test if server runs Bash code as expected.""" @@ -257,3 +290,4 @@ if __name__ == '__main__': test_c() test_cpp() test_java() + test_scilab() -- cgit