weekly release 5.0dev
[moodle.git] / mod / chat / tests / generator_test.php
blob9f969db69469d8b6bca54a0fb395a0fd64d1ec79
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.
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/>.
17 namespace mod_chat;
19 /**
20 * Generator tests class.
22 * @package mod_chat
23 * @copyright 2013 Frédéric Massart
24 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
26 class generator_test extends \advanced_testcase {
28 /**
29 * Setup testcase.
31 public function setUp(): void {
32 parent::setUp();
33 // Chat module is disabled by default, enable it for testing.
34 $manager = \core_plugin_manager::resolve_plugininfo_class('mod');
35 $manager::enable_plugin('chat', 1);
38 public function test_create_instance(): void {
39 global $DB;
40 $this->resetAfterTest();
41 $this->setAdminUser();
43 $course = $this->getDataGenerator()->create_course();
45 $this->assertFalse($DB->record_exists('chat', array('course' => $course->id)));
46 $chat = $this->getDataGenerator()->create_module('chat', array('course' => $course->id));
47 $this->assertEquals(1, $DB->count_records('chat', array('course' => $course->id)));
48 $this->assertTrue($DB->record_exists('chat', array('course' => $course->id)));
49 $this->assertTrue($DB->record_exists('chat', array('id' => $chat->id)));
51 $params = array('course' => $course->id, 'name' => 'One more chat');
52 $chat = $this->getDataGenerator()->create_module('chat', $params);
53 $this->assertEquals(2, $DB->count_records('chat', array('course' => $course->id)));
54 $this->assertEquals('One more chat', $DB->get_field_select('chat', 'name', 'id = :id', array('id' => $chat->id)));