69
69
public function test_get_correct_response() {
70
// Testing with 3.0 + 0.1416.
71
$question = test_question_maker::make_question('calculated');
72
$question->start_attempt(new question_attempt_step(), 3);
73
$values = $question->vs->get_values();
74
$this->assertSame(array('answer' => '3.01' ), $question->get_correct_response());
75
foreach ($question->answers as $answer) {
76
$answer->correctanswerlength = 2;
77
$answer->correctanswerformat = 2;
79
$this->assertSame(array('answer' => '3.0' ), $question->get_correct_response());
81
// Testing with 1.0 + 5.0.
70
82
$question = test_question_maker::make_question('calculated');
71
83
$question->start_attempt(new question_attempt_step(), 1);
72
84
$values = $question->vs->get_values();
85
$this->assertSame(array('answer' => '6.00' ), $question->get_correct_response());
74
$this->assertEquals(array('answer' => $values['a'] + $values['b']),
87
foreach ($question->answers as $answer) {
88
$answer->correctanswerlength = 2;
89
$answer->correctanswerformat = 2;
91
$this->assertSame(array('answer' => '6.0' ),
75
92
$question->get_correct_response());
93
// Testing with 31.0 + 0.01416 .
94
$question = test_question_maker::make_question('calculated');
95
$question->start_attempt(new question_attempt_step(), 4);
96
$values = $question->vs->get_values();
97
$this->assertSame(array('answer' => '31.01' ), $question->get_correct_response());
99
foreach ($question->answers as $answer) {
100
$answer->correctanswerlength = 3;
101
$answer->correctanswerformat = 2;
103
$this->assertSame(array('answer' => '31.0' ), $question->get_correct_response());
78
107
public function test_get_question_summary() {