summaryrefslogtreecommitdiff
path: root/testapp/exam/xmlrpc_clients.py
AgeCommit message (Collapse)Author
2015-04-26Code Review: Code refactoringankitjavalkar
- Add from_json classmethod - Question language is passed directly to the code server - Fix errors in evaluation of code - Fix test cases
2015-04-26Add code checker registration classankitjavalkar
2015-04-26Code review - changes as per code review discussionankitjavalkar
- Further commonify and simplify code_server, fix bugs
2015-04-26Code review - changes as per code review discussionankitjavalkar
- make loop in consolidate_test_cases more readable - split signal handler func definition into three seperate func - pass seperate kwargs to TestCode class - unpack json in CodeServer class and then pass to TestCode
2015-04-26Code Server code cleanup and code commonificationankitjavalkar
- Pass question and test case info as json string (info_parameter) - Return success status and error message as a json string - Embed user answer and question lang in info_parameter - Commonify Python code evaluations and assertion test - Deprecate individual function call based on language
2015-04-26Modify method of returning answers from code serverankitjavalkar
2015-04-26Modify method of passing test case attributes to code serverankitjavalkar
Conflicts: testapp/exam/admin.py testapp/exam/models.py testapp/exam/views.py
2015-04-26Add test case model for testing redesignankitjavalkar
Conflicts: testapp/exam/models.py testapp/exam/views.py
2014-03-03Autochecks scilab function.prathamesh
A method is created that checks the scilab function submitted by the student. The method removes the terminating commands in scilab. If errors are present then it returns error, else provides input to the function and checks for the expected output. If function returns correct output for all the inputs then the function is graded correct, else throws the error message.
2013-07-03merged javaprathamesh
2013-05-08Function to check C-C++ codeprathamesh
Added a function which compiles C and C++ code submitted by the student. 1) If compilation is successful, then the submitted code is tested using test-cases. 2) To test the function written by the student, a C++ file calls the function and passes the argument to the function. Then the function checks for the expected return value. 3) If the return value is as expected, then a different set of arguments are passed, and the output is checked. 4) If for all set of arguments the output is as expected then the student code is graded correct else the error is displayed to the student. Changed the way the code is graded. Previously, the algorithm checked the student code for all test-cases. If all the test-cases were satisfied, the last-line of the program was reached and printed "All Correct". So at any point if a test-case fails, the last line is not reached as the program was terminate. When the string "All Correct" was found in the output, the code was graded as RIGHT else WRONG. This is not a proper way for code checking, as the student code *may* contain a print statement with the string('All Correct'), and thus can get program RIGHT even though it is WRONG. So now the student code is tested as follows: 1) The code checks for all test-cases. 2) If all test-cases are satisfied then it returns 0. 3) If any one of the test-case fails, the program is terminated and will return 1. 4) Now depending on the return status(0 or 1), it will grade the code. a) if 0 then RIGHT b) if 1 then WRONG This ensures, no manipulation from student side.
2011-12-09Moved all the apps to testapp folderparth