Merge branch 'MDL-61971-master' of git://github.com/mickhawkins/moodle
[moodle.git] / question / behaviour / adaptive / tests / behaviourtype_test.php
CommitLineData
097efe9d
TH
1<?php
2// This file is part of Moodle - http://moodle.org/
3//
4// Moodle is free software: you can redistribute it and/or modify
5// it under the terms of the GNU General Public License as published by
6// the Free Software Foundation, either version 3 of the License, or
7// (at your option) any later version.
8//
9// Moodle is distributed in the hope that it will be useful,
10// but WITHOUT ANY WARRANTY; without even the implied warranty of
11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12// GNU General Public License for more details.
13//
14// You should have received a copy of the GNU General Public License
15// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
16
17/**
18 * This file contains tests for the adaptive behaviour type class.
19 *
20 * @package qbehaviour_adaptive
21 * @category test
22 * @copyright 2015 The Open University
23 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
24 */
25
26
27defined('MOODLE_INTERNAL') || die();
28
29global $CFG;
1fcf0ca8
RS
30require_once(__DIR__ . '/../../../engine/lib.php');
31require_once(__DIR__ . '/../../../engine/tests/helpers.php');
097efe9d
TH
32
33
34/**
35 * Unit tests for the adaptive behaviour type class.
36 *
37 * @copyright 2015 The Open University
38 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
39 */
40class qbehaviour_adaptive_type_test extends basic_testcase {
41
42 /** @var qbehaviour_adaptive_type */
43 protected $behaviourtype;
44
45 public function setUp() {
46 parent::setUp();
47 $this->behaviourtype = question_engine::get_behaviour_type('adaptive');
48 }
49
50 public function test_is_archetypal() {
51 $this->assertTrue($this->behaviourtype->is_archetypal());
52 }
53
54 public function test_get_unused_display_options() {
55 $this->assertEquals(array(),
56 $this->behaviourtype->get_unused_display_options());
57 }
58
47be39ef
TH
59 public function test_can_questions_finish_during_the_attempt() {
60 $this->assertFalse($this->behaviourtype->can_questions_finish_during_the_attempt());
61 }
62
097efe9d
TH
63 public function test_adjust_random_guess_score() {
64 $this->assertEquals(0, $this->behaviourtype->adjust_random_guess_score(0));
65 $this->assertEquals(1, $this->behaviourtype->adjust_random_guess_score(1));
66 }
67}