~ubuntu-branches/ubuntu/utopic/moodle/utopic

« back to all changes in this revision

Viewing changes to mod/book/tool/exportimscp/tests/events_test.php

  • Committer: Package Import Robot
  • Author(s): Thijs Kinkhorst
  • Date: 2014-05-12 16:10:38 UTC
  • mfrom: (36.1.3 sid)
  • Revision ID: package-import@ubuntu.com-20140512161038-puyqf65k4e0s8ytz
Tags: 2.6.3-1
New upstream release.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
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
 * Events tests.
 
19
 *
 
20
 * @package    booktool_exportimscp
 
21
 * @category   phpunit
 
22
 * @copyright  2013 Frédéric Massart
 
23
 * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
 
24
 */
 
25
 
 
26
defined('MOODLE_INTERNAL') || die();
 
27
global $CFG;
 
28
 
 
29
/**
 
30
 * Events tests class.
 
31
 *
 
32
 * @package    booktool_exportimscp
 
33
 * @category   phpunit
 
34
 * @copyright  2013 Frédéric Massart
 
35
 * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
 
36
 */
 
37
class booktool_exportimscp_events_testcase extends advanced_testcase {
 
38
 
 
39
    public function setUp() {
 
40
        $this->resetAfterTest();
 
41
    }
 
42
 
 
43
    public function test_book_exported() {
 
44
        // There is no proper API to call to test the event, so what we are
 
45
        // doing here is simply making sure that the events returns the right information.
 
46
 
 
47
        $course = $this->getDataGenerator()->create_course();
 
48
        $book = $this->getDataGenerator()->create_module('book', array('course' => $course->id));
 
49
 
 
50
        $params = array(
 
51
            'context' => context_module::instance($book->cmid),
 
52
            'objectid' => $book->id
 
53
        );
 
54
        $event = \booktool_exportimscp\event\book_exported::create($params);
 
55
 
 
56
        // Triggering and capturing the event.
 
57
        $sink = $this->redirectEvents();
 
58
        $event->trigger();
 
59
        $events = $sink->get_events();
 
60
        $this->assertCount(1, $events);
 
61
        $event = reset($events);
 
62
 
 
63
        // Checking that the event contains the expected values.
 
64
        $this->assertInstanceOf('\booktool_exportimscp\event\book_exported', $event);
 
65
        $this->assertEquals(context_module::instance($book->cmid), $event->get_context());
 
66
        $this->assertEquals($book->id, $event->objectid);
 
67
        $expected = array($course->id, 'book', 'exportimscp', 'tool/exportimscp/index.php?id=' . $book->cmid,
 
68
            $book->id, $book->cmid);
 
69
        $this->assertEventLegacyLogData($expected, $event);
 
70
    }
 
71
 
 
72
}