Difference between revisions of "Tutorial Moodle VPL Tips & Tricks"
(→Evaluation Output) |
(→Output of Evaluate Step) |
||
Line 42: | Line 42: | ||
> (nruns-nerrors)==1?stest[0]:stest[1]); | > (nruns-nerrors)==1?stest[0]:stest[1]); | ||
+ | <br /> | ||
+ | ==Generating a vpl_evaluate.cases File== | ||
+ | <br /> | ||
+ | ;Recommendations | ||
+ | # write a solution program first | ||
+ | # run it on several cases you want to test your students' programs with | ||
+ | # capture the outputs of the solution program on different cases. Copy paste into the vpl_evaluate.cases file. | ||
+ | # allow for extra characters that might be generated by the input statements. Include them as well in vpl_evaluate.cases. | ||
<br /> | <br /> | ||
<br /> | <br /> |
Revision as of 19:48, 11 June 2014
--D. Thiebaut (talk) 20:31, 11 June 2014 (EDT)
This is a collection of tips, tricks, observations, recommendations, and modifications related to using VPL with Moodle.
Tips & Tricks
Output of Evaluate Step
- The output of the Evaluate action is a bit illogical:
+------------------------------+ | 3 tests run/ 0 tests failed | +------------------------------+
- To change it into something more intuitive, such as this:
+------------------------------+ | 3 tests run/ 3 tests passed | +------------------------------+
- we simply need to modify the code of vpl_evaluate.cpp on the moodle server, in /var/www/html/moodle/mod/vpl/jail/default_scripts (or whatever directory the vpl files reside).
- The diff of the modification is shown below:
1058,1059c1058,1060 < printf(">| %2d %s run/%2d %s failed |\n", < nruns, nruns==1?stest[0]:stest[1], nerrors, nerrors==1?stest[0]:stest[1]); --- > printf(">| %2d %s run/%2d %s passed |\n", > nruns, nruns==1?stest[0]:stest[1], nruns-nerrors, > (nruns-nerrors)==1?stest[0]:stest[1]);
Generating a vpl_evaluate.cases File
- Recommendations
- write a solution program first
- run it on several cases you want to test your students' programs with
- capture the outputs of the solution program on different cases. Copy paste into the vpl_evaluate.cases file.
- allow for extra characters that might be generated by the input statements. Include them as well in vpl_evaluate.cases.