Proyectos de Subversion Moodle

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1441 ariadna 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
namespace core_courseformat\local\overview;
18
 
19
use core\output\local\properties\text_align;
20
 
21
/**
22
 * Tests for overviewitem.
23
 *
24
 * @package    core_courseformat
25
 * @category   test
26
 * @copyright  2025 Ferran Recio <ferran@moodle.com>
27
 * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
28
 * @covers    \core_courseformat\local\overview\overviewitem
29
 */
30
final class overviewitem_test extends \advanced_testcase {
31
    /**
32
     * Tests the constructor.
33
     *
34
     * @covers ::__construct
35
     * @covers ::get_name
36
     * @covers ::get_value
37
     * @covers ::get_content
38
     * @covers ::get_text_align
39
     * @covers ::get_alert_count
40
     * @covers ::get_alert_label
41
     */
42
    public function test_constructor(): void {
43
        $name = 'Activity name';
44
        $value = 1;
45
        $content = 'Activity content';
46
        $textalign = text_align::CENTER;
47
        $alertcount = 1;
48
        $alertlabel = 'Alert label';
49
 
50
        $item = new overviewitem($name, $value, $content, $textalign, $alertcount, $alertlabel);
51
 
52
        $this->assertEquals($name, $item->get_name());
53
        $this->assertEquals($value, $item->get_value());
54
        $this->assertEquals($content, $item->get_content());
55
        $this->assertEquals($textalign, $item->get_text_align());
56
        $this->assertEquals($alertcount, $item->get_alert_count());
57
        $this->assertEquals($alertlabel, $item->get_alert_label());
58
    }
59
 
60
    /**
61
     * Test chained setters.
62
     *
63
     * @covers ::set_name
64
     * @covers ::set_value
65
     * @covers ::set_content
66
     * @covers ::set_text_align
67
     * @covers ::set_alert_count
68
     * @covers ::set_alert_label
69
     * @covers ::get_name
70
     * @covers ::get_value
71
     * @covers ::get_content
72
     * @covers ::get_text_align
73
     * @covers ::get_alert_count
74
     * @covers ::get_alert_label
75
     */
76
    public function test_setters(): void {
77
        $item = new overviewitem('Sample', 1, 'Content', text_align::CENTER, 1, 'Alert label');
78
 
79
        $this->assertEquals('Sample', $item->get_name());
80
        $this->assertEquals(1, $item->get_value());
81
        $this->assertEquals('Content', $item->get_content());
82
        $this->assertEquals(text_align::CENTER, $item->get_text_align());
83
        $this->assertEquals(1, $item->get_alert_count());
84
        $this->assertEquals('Alert label', $item->get_alert_label());
85
 
86
        $name = 'New activity name';
87
        $value = 2;
88
        $content = 'New activity content';
89
        $textalign = text_align::END;
90
        $alertcount = 2;
91
        $alertlabel = 'New alert label';
92
 
93
        $item->set_name($name)
94
            ->set_value($value)
95
            ->set_content($content)
96
            ->set_text_align($textalign)
97
            ->set_alert($alertcount, $alertlabel);
98
 
99
        $this->assertEquals($name, $item->get_name());
100
        $this->assertEquals($value, $item->get_value());
101
        $this->assertEquals($content, $item->get_content());
102
        $this->assertEquals($textalign, $item->get_text_align());
103
        $this->assertEquals($alertcount, $item->get_alert_count());
104
        $this->assertEquals($alertlabel, $item->get_alert_label());
105
    }
106
}