Merge branch 'MDL-38311_23' of git://github.com/timhunt/moodle into MOODLE_23_STABLE
authorEloy Lafuente (stronk7) <stronk7@moodle.org>
Wed, 6 Mar 2013 00:24:22 +0000 (01:24 +0100)
committerEloy Lafuente (stronk7) <stronk7@moodle.org>
Wed, 6 Mar 2013 00:24:22 +0000 (01:24 +0100)
13 files changed:
question/behaviour/adaptive/tests/walkthrough_test.php
question/behaviour/adaptivenopenalty/tests/walkthrough_test.php
question/behaviour/deferredcbm/tests/walkthrough_test.php
question/behaviour/deferredfeedback/tests/walkthrough_test.php
question/behaviour/immediatecbm/tests/walkthrough_test.php
question/behaviour/immediatefeedback/tests/walkthrough_test.php
question/behaviour/informationitem/tests/walkthrough_test.php
question/behaviour/interactive/tests/walkthrough_test.php
question/behaviour/manualgraded/tests/walkthrough_test.php
question/engine/questionattempt.php
question/engine/questionusage.php
question/engine/tests/helpers.php
question/engine/tests/unitofwork_test.php

index b78e470..09ad153 100644 (file)
@@ -158,7 +158,7 @@ class qbehaviour_adaptive_walkthrough_test extends qbehaviour_walkthrough_test_b
                 $this->get_contains_correct_expectation());
 
         // Process a manual comment.
-        $this->manual_grade('Not good enough!', 1);
+        $this->manual_grade('Not good enough!', 1, FORMAT_HTML);
 
         // Verify.
         $this->check_current_state(question_state::$mangrpartial);
index 546a5b5..b217a59 100644 (file)
@@ -124,7 +124,7 @@ class qbehaviour_adaptivenopenalty_walkthrough_test extends qbehaviour_walkthrou
                 $this->get_contains_correct_expectation());
 
         // Process a manual comment.
-        $this->manual_grade('Not good enough!', 1);
+        $this->manual_grade('Not good enough!', 1, FORMAT_HTML);
 
         // Verify.
         $this->check_current_state(question_state::$mangrpartial);
index 852b068..4e4710e 100644 (file)
@@ -95,7 +95,7 @@ class qbehaviour_deferredcbm_walkthrough_test extends qbehaviour_walkthrough_tes
                 $this->get_contains_correct_expectation());
 
         // Process a manual comment.
-        $this->manual_grade('Not good enough!', 1);
+        $this->manual_grade('Not good enough!', 1, FORMAT_HTML);
 
         // Verify.
         $this->check_current_state(question_state::$mangrpartial);
index 80faf0c..74eda17 100644 (file)
@@ -92,7 +92,7 @@ class qbehaviour_deferredfeedback_walkthrough_test extends qbehaviour_walkthroug
                 $this->quba->get_response_summary($this->slot));
 
         // Process a manual comment.
-        $this->manual_grade('Not good enough!', 1);
+        $this->manual_grade('Not good enough!', 1, FORMAT_HTML);
 
         $this->check_current_state(question_state::$mangrpartial);
         $this->check_current_mark(1);
index b0f3d9a..d93b8a4 100644 (file)
@@ -109,7 +109,7 @@ class qbehaviour_immediatecbm_walkthrough_test extends qbehaviour_walkthrough_te
                 $this->get_contains_correct_expectation());
 
         // Process a manual comment.
-        $this->manual_grade('Not good enough!', 0.5);
+        $this->manual_grade('Not good enough!', 0.5, FORMAT_HTML);
 
         // Verify.
         $this->check_current_state(question_state::$mangrpartial);
@@ -176,7 +176,7 @@ class qbehaviour_immediatecbm_walkthrough_test extends qbehaviour_walkthrough_te
                 $this->get_contains_mc_radio_expectation(2, false, false));
 
         // Process a manual comment.
-        $this->manual_grade('Not good enough!', 0.5);
+        $this->manual_grade('Not good enough!', 0.5, FORMAT_HTML);
 
         // Verify.
         $this->check_current_state(question_state::$mangrpartial);
index ebea45e..1036500 100644 (file)
@@ -116,7 +116,7 @@ class qbehaviour_immediatefeedback_walkthrough_test extends qbehaviour_walkthrou
                 $this->get_contains_correct_expectation());
 
         // Process a manual comment.
-        $this->manual_grade('Not good enough!', 0.5);
+        $this->manual_grade('Not good enough!', 0.5, FORMAT_HTML);
 
         // Verify.
         $this->check_current_state(question_state::$mangrpartial);
@@ -185,7 +185,7 @@ class qbehaviour_immediatefeedback_walkthrough_test extends qbehaviour_walkthrou
                 $this->get_contains_mc_radio_expectation(2, false, false));
 
         // Process a manual comment.
-        $this->manual_grade('Not good enough!', 0.5);
+        $this->manual_grade('Not good enough!', 0.5, FORMAT_HTML);
 
         // Verify.
         $this->check_current_state(question_state::$mangrpartial);
index d2b4744..94c6b65 100644 (file)
@@ -74,7 +74,7 @@ class qbehaviour_informationitem_walkthrough_test extends qbehaviour_walkthrough
                 $this->get_contains_general_feedback_expectation($description));
 
         // Process a manual comment.
-        $this->manual_grade('Not good enough!', null);
+        $this->manual_grade('Not good enough!', null, FORMAT_HTML);
 
         $this->check_current_state(question_state::$manfinished);
         $this->check_current_mark(null);
@@ -83,6 +83,6 @@ class qbehaviour_informationitem_walkthrough_test extends qbehaviour_walkthrough
 
         // Check that trying to process a manual comment with a grade causes an exception.
         $this->setExpectedException('moodle_exception');
-        $this->manual_grade('Not good enough!', 1);
+        $this->manual_grade('Not good enough!', 1, FORMAT_HTML);
     }
 }
index 4af3490..7dbcc67 100644 (file)
@@ -157,7 +157,7 @@ class qbehaviour_interactive_walkthrough_test extends qbehaviour_walkthrough_tes
                 $this->get_no_hint_visible_expectation());
 
         // Process a manual comment.
-        $this->manual_grade('Not good enough!', 0.5);
+        $this->manual_grade('Not good enough!', 0.5, FORMAT_HTML);
 
         // Verify.
         $this->check_current_state(question_state::$mangrpartial);
index 32af729..cb7c1ce 100644 (file)
@@ -90,7 +90,7 @@ class qbehaviour_manualgraded_walkthrough_test extends qbehaviour_walkthrough_te
                 $this->quba->get_response_summary($this->slot));
 
         // Process a manual comment.
-        $this->manual_grade('Not good enough!', 10);
+        $this->manual_grade('Not good enough!', 10, FORMAT_HTML);
 
         // Verify.
         $this->check_current_state(question_state::$mangrright);
@@ -140,7 +140,7 @@ class qbehaviour_manualgraded_walkthrough_test extends qbehaviour_walkthrough_te
                 $this->get_does_not_contain_specific_feedback_expectation());
 
         // Process a manual comment.
-        $this->manual_grade('Not good enough!', 1);
+        $this->manual_grade('Not good enough!', 1, FORMAT_HTML);
 
         $this->check_current_state(question_state::$mangrpartial);
         $this->check_current_mark(1);
@@ -181,14 +181,14 @@ class qbehaviour_manualgraded_walkthrough_test extends qbehaviour_walkthrough_te
 
         // Process a blank manual comment. Ensure it does not change the state.
         $numsteps = $this->get_step_count();
-        $this->manual_grade('', '');
+        $this->manual_grade('', '', FORMAT_HTML);
         $this->check_step_count($numsteps);
         $this->check_current_state(question_state::$needsgrading);
         $this->check_current_mark(null);
 
         // Process a comment, but with the mark blank. Should be recorded, but
         // not change the mark.
-        $this->manual_grade('I am not sure what grade to award.', '');
+        $this->manual_grade('I am not sure what grade to award.', '', FORMAT_HTML);
         $this->check_step_count($numsteps + 1);
         $this->check_current_state(question_state::$needsgrading);
         $this->check_current_mark(null);
@@ -197,7 +197,7 @@ class qbehaviour_manualgraded_walkthrough_test extends qbehaviour_walkthrough_te
                         preg_quote('I am not sure what grade to award.') . '/'));
 
         // Now grade it.
-        $this->manual_grade('Pretty good!', '9.00000');
+        $this->manual_grade('Pretty good!', '9.00000', FORMAT_HTML);
         $this->check_step_count($numsteps + 2);
         $this->check_current_state(question_state::$mangrpartial);
         $this->check_current_mark(9);
@@ -205,13 +205,13 @@ class qbehaviour_manualgraded_walkthrough_test extends qbehaviour_walkthrough_te
                 new question_pattern_expectation('/' . preg_quote('Pretty good!') . '/'));
 
         // Process the same data again, and make sure it does not add a step.
-        $this->manual_grade('Pretty good!', '9.00000');
+        $this->manual_grade('Pretty good!', '9.00000', FORMAT_HTML);
         $this->check_step_count($numsteps + 2);
         $this->check_current_state(question_state::$mangrpartial);
         $this->check_current_mark(9);
 
         // Now set the mark back to blank.
-        $this->manual_grade('Actually, I am not sure any more.', '');
+        $this->manual_grade('Actually, I am not sure any more.', '', FORMAT_HTML);
         $this->check_step_count($numsteps + 3);
         $this->check_current_state(question_state::$needsgrading);
         $this->check_current_mark(null);
@@ -261,7 +261,7 @@ class qbehaviour_manualgraded_walkthrough_test extends qbehaviour_walkthrough_te
                 $this->quba->get_response_summary($this->slot));
 
         // Process a blank comment and a grade of 0.
-        $this->manual_grade('', 0);
+        $this->manual_grade('', 0, FORMAT_HTML);
 
         // Verify.
         $this->check_current_state(question_state::$mangrwrong);
index 1aa334a..1c19f17 100644 (file)
@@ -1114,14 +1114,19 @@ class question_attempt {
 
     /**
      * Perform a manual grading action on this attempt.
-     * @param $comment the comment being added.
-     * @param $mark the new mark. (Optional, if not given, then only a comment is added.)
+     * @param string $comment the comment being added.
+     * @param float $mark the new mark. If null, then only a comment is added.
+     * @param int $commentformat the FORMAT_... for $comment. Must be given.
      * @param int $timestamp the time to record for the action. (If not given, use now.)
      * @param int $userid the user to attribute the aciton to. (If not given, use the current user.)
-     * @return unknown_type
      */
-    public function manual_grade($comment, $mark, $timestamp = null, $userid = null) {
+    public function manual_grade($comment, $mark, $commentformat = null, $timestamp = null, $userid = null) {
         $submitteddata = array('-comment' => $comment);
+        if (is_null($commentformat)) {
+            debugging('You should pass $commentformat to manual_grade.', DEBUG_DEVELOPER);
+            $commentformat = FORMAT_HTML;
+        }
+        $submitteddata['-commentformat'] = $commentformat;
         if (!is_null($mark)) {
             $submitteddata['-mark'] = $mark;
             $submitteddata['-maxmark'] = $this->maxmark;
index e4de197..4815086 100644 (file)
@@ -647,9 +647,9 @@ class question_usage_by_activity {
      * @param number $mark the mark that is being assigned. Can be null to just
      * add a comment.
      */
-    public function manual_grade($slot, $comment, $mark) {
+    public function manual_grade($slot, $comment, $mark, $commentformat = null) {
         $qa = $this->get_question_attempt($slot);
-        $qa->manual_grade($comment, $mark);
+        $qa->manual_grade($comment, $mark, $commentformat);
         $this->observer->notify_attempt_modified($qa);
     }
 
index 703ee8d..1a9605b 100644 (file)
@@ -653,8 +653,8 @@ abstract class qbehaviour_walkthrough_test_base extends question_testcase {
         $this->quba->process_action($this->slot, $data);
     }
 
-    protected function manual_grade($comment, $mark) {
-        $this->quba->manual_grade($this->slot, $comment, $mark);
+    protected function manual_grade($comment, $mark, $commentformat = null) {
+        $this->quba->manual_grade($this->slot, $comment, $mark, $commentformat);
     }
 
     protected function check_current_state($state) {
index aa68a57..f83de5c 100644 (file)
@@ -174,7 +174,7 @@ class question_engine_unit_of_work_test extends data_loading_method_test_base {
 
     public function test_process_action() {
 
-        $this->quba->manual_grade($this->slot, 'Acutally, that is not quite right', 0.5);
+        $this->quba->manual_grade($this->slot, 'Acutally, that is not quite right', 0.5, FORMAT_HTML);
 
         // Here, however, were we are adding a step to an existing qa, we do need to track that.
         $this->assertEquals(0, count($this->observer->get_attempts_added()));