Difference between revisions of "Tutorial Moodle VPL Tips & Tricks"

From dftwiki3
Jump to: navigation, search
(Output of Evaluate Step)
(Generating a vpl_evaluate.cases File)
Line 46: Line 46:
 
<br />
 
<br />
 
;Recommendations
 
;Recommendations
# write a solution program first
+
# write a solution program first.
# run it on several cases you want to test your students' programs with
+
# 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.
+
# capture the outputs of the solution program on different cases.  Copy paste into the vpl_evaluate.cases file.  Don't worry yet about making it exactly correct.
# allow for extra characters that might be generated by the input statements. Include them as well in vpl_evaluate.cases.
+
# evaluate the solution program.  You will get mismatches between the generated output and the expected output.  Just copy/paste the generated output back into the vpl_evaluate.cases file.  You will also be able to include the extra characters generated by the input statements.
<br />
+
# You should be ready to evaluate the solution program and get 100/100 as a grade.
<br />
 
 
<br />
 
<br />
 
<br />
 
<br />

Revision as of 08:15, 12 June 2014

--D. Thiebaut (talk) 20:31, 11 June 2014 (EDT)




MoodleVPLLogo.png


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
  1. write a solution program first.
  2. run it on several cases you want to test your students' programs with.
  3. capture the outputs of the solution program on different cases. Copy paste into the vpl_evaluate.cases file. Don't worry yet about making it exactly correct.
  4. evaluate the solution program. You will get mismatches between the generated output and the expected output. Just copy/paste the generated output back into the vpl_evaluate.cases file. You will also be able to include the extra characters generated by the input statements.
  5. You should be ready to evaluate the solution program and get 100/100 as a grade.