source: moodle/trunk/fuentes/admin/tool/log/tests/manager_test.php @ 136

Last change on this file since 136 was 136, checked in by mabarracus, 4 years ago

Ported code to xenial

File size: 2.7 KB
Line 
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 * Log manager and log API tests.
19 *
20 * @package    tool_log
21 * @copyright  2014 Petr Skoda {@link http://skodak.org/}
22 * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
23 */
24
25defined('MOODLE_INTERNAL') || die;
26
27class tool_log_manager_testcase extends advanced_testcase {
28    public function test_get_log_manager() {
29        global $CFG;
30        $this->resetAfterTest();
31
32        $manager = get_log_manager();
33        $this->assertInstanceOf('core\log\manager', $manager);
34
35        $stores = $manager->get_readers();
36        $this->assertInternalType('array', $stores);
37        $this->assertCount(0, $stores);
38
39        $this->assertFileExists("$CFG->dirroot/$CFG->admin/tool/log/store/standard/version.php");
40        $this->assertFileExists("$CFG->dirroot/$CFG->admin/tool/log/store/legacy/version.php");
41
42        set_config('enabled_stores', 'logstore_standard,logstore_legacy', 'tool_log');
43        $manager = get_log_manager(true);
44        $this->assertInstanceOf('core\log\manager', $manager);
45
46        $stores = $manager->get_readers();
47        $this->assertInternalType('array', $stores);
48        $this->assertCount(2, $stores);
49        foreach ($stores as $key => $store) {
50            $this->assertInternalType('string', $key);
51            $this->assertInstanceOf('core\log\sql_select_reader', $store);
52        }
53
54        $stores = $manager->get_readers('core\log\sql_internal_reader');
55        $this->assertInternalType('array', $stores);
56        $this->assertCount(1, $stores);
57        foreach ($stores as $key => $store) {
58            $this->assertInternalType('string', $key);
59            $this->assertSame('logstore_standard', $key);
60            $this->assertInstanceOf('core\log\sql_internal_reader', $store);
61        }
62
63        $stores = $manager->get_readers('core\log\sql_select_reader');
64        $this->assertInternalType('array', $stores);
65        $this->assertCount(2, $stores);
66        foreach ($stores as $key => $store) {
67            $this->assertInternalType('string', $key);
68            $this->assertInstanceOf('core\log\sql_select_reader', $store);
69        }
70    }
71}
Note: See TracBrowser for help on using the repository browser.