Skip to content

Commit

Permalink
Merge branch 'MDL-55061' of https://github.com/zanekarl17/moodle
Browse files Browse the repository at this point in the history
  • Loading branch information
danpoltawski committed Aug 8, 2016
2 parents 49924b3 + 6db3b6d commit 741bd4d
Show file tree
Hide file tree
Showing 17 changed files with 514 additions and 0 deletions.
38 changes: 38 additions & 0 deletions grade/export/ods/classes/event/grade_exported.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.

/**
* Grade export event.
*
* @package gradeexport_ods
* @copyright 2016 Zane Karl <zkarl@oid.ucla.edu>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/

namespace gradeexport_ods\event;

defined('MOODLE_INTERNAL') || die();

/**
* Grade export event class.
*
* @package gradeexport_ods
* @since Moodle 3.2
* @copyright 2016 Zane Karl <zkarl@oid.ucla.edu>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class grade_exported extends \core\event\grade_exported {
}
2 changes: 2 additions & 0 deletions grade/export/ods/export.php
Original file line number Diff line number Diff line change
Expand Up @@ -55,5 +55,7 @@
echo $export->get_grade_publishing_url();
echo $OUTPUT->footer();
} else {
$event = \gradeexport_ods\event\grade_exported::create(array('context' => $context));
$event->trigger();
$export->print_grades();
}
1 change: 1 addition & 0 deletions grade/export/ods/lang/en/gradeexport_ods.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/

$string['eventgradeexported'] = 'OpenDocument grade exported';
$string['pluginname'] = 'OpenDocument spreadsheet';
$string['ods:publish'] = 'Publish ODS grade export';
$string['ods:view'] = 'Use OpenDocument grade export';
Expand Down
65 changes: 65 additions & 0 deletions grade/export/ods/tests/logging_test.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.

/**
* Events test.
*
* @package gradeexport_ods
* @copyright 2016 Zane Karl zkarl@oid.ucla.edu
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/

defined('MOODLE_INTERNAL') || die();

/**
* Resource events test cases.
*
* @package gradeexport_ods
* @copyright 2016 Zane Karl zkarl@oid.ucla.edu
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class ods_logging_events_testcase extends advanced_testcase {

/**
* Setup is called before calling test case.
*/
public function setUp() {
$this->resetAfterTest();
}

/**
* Test course_module_instance_list_viewed event.
*/
public function test_logging() {
// There is no proper API to call to trigger this event, so what we are
// doing here is simply making sure that the events returns the right information.
$course = $this->getDataGenerator()->create_course();
$params = array(
'context' => context_course::instance($course->id)
);
$event = \gradeexport_ods\event\grade_exported::create($params);
// Triggering and capturing the event.
$sink = $this->redirectEvents();
$event->trigger();
$events = $sink->get_events();
$this->assertCount(1, $events);
$event = reset($events);
// Checking that the event contains the expected values.
$this->assertInstanceOf('\gradeexport_ods\event\grade_exported', $event);
$this->assertEquals(context_course::instance($course->id), $event->get_context());
$this->assertEquals('ods', $event->get_export_type());
}
}
38 changes: 38 additions & 0 deletions grade/export/txt/classes/event/grade_exported.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.

/**
* Grade export event.
*
* @package gradeexport_txt
* @copyright 2016 Zane Karl <zkarl@oid.ucla.edu>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/

namespace gradeexport_txt\event;

defined('MOODLE_INTERNAL') || die();

/**
* Grade export event class.
*
* @package gradeexport_txt
* @since Moodle 3.2
* @copyright 2016 Zane Karl <zkarl@oid.ucla.edu>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class grade_exported extends \core\event\grade_exported {
}
2 changes: 2 additions & 0 deletions grade/export/txt/export.php
Original file line number Diff line number Diff line change
Expand Up @@ -62,5 +62,7 @@
echo $export->get_grade_publishing_url();
echo $OUTPUT->footer();
} else {
$event = \gradeexport_txt\event\grade_exported::create(array('context' => $context));
$event->trigger();
$export->print_grades();
}
1 change: 1 addition & 0 deletions grade/export/txt/lang/en/gradeexport_txt.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/

$string['eventgradeexported'] = 'TXT grade exported';
$string['pluginname'] = 'Plain text file';
$string['timeexported'] = 'Last downloaded from this course';
$string['txt:publish'] = 'Publish TXT grade export';
Expand Down
65 changes: 65 additions & 0 deletions grade/export/txt/tests/logging_test.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.

/**
* Events test.
*
* @package gradeexport_txt
* @copyright 2016 Zane Karl zkarl@oid.ucla.edu
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/

defined('MOODLE_INTERNAL') || die();

/**
* Resource events test cases.
*
* @package gradeexport_txt
* @copyright 2016 Zane Karl zkarl@oid.ucla.edu
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class txt_logging_events_testcase extends advanced_testcase {

/**
* Setup is called before calling test case.
*/
public function setUp() {
$this->resetAfterTest();
}

/**
* Test course_module_instance_list_viewed event.
*/
public function test_logging() {
// There is no proper API to call to trigger this event, so what we are
// doing here is simply making sure that the events returns the right information.
$course = $this->getDataGenerator()->create_course();
$params = array(
'context' => context_course::instance($course->id)
);
$event = \gradeexport_txt\event\grade_exported::create($params);
// Triggering and capturing the event.
$sink = $this->redirectEvents();
$event->trigger();
$events = $sink->get_events();
$this->assertCount(1, $events);
$event = reset($events);
// Checking that the event contains the expected values.
$this->assertInstanceOf('\gradeexport_txt\event\grade_exported', $event);
$this->assertEquals(context_course::instance($course->id), $event->get_context());
$this->assertEquals('txt', $event->get_export_type());
}
}
38 changes: 38 additions & 0 deletions grade/export/xls/classes/event/grade_exported.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.

/**
* Grade export event.
*
* @package gradeexport_xls
* @copyright 2016 Zane Karl <zkarl@oid.ucla.edu>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/

namespace gradeexport_xls\event;

defined('MOODLE_INTERNAL') || die();

/**
* Grade export event class.
*
* @package gradeexport_xls
* @since Moodle 3.2
* @copyright 2016 Zane Karl <zkarl@oid.ucla.edu>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class grade_exported extends \core\event\grade_exported {
}
2 changes: 2 additions & 0 deletions grade/export/xls/export.php
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@
echo $export->get_grade_publishing_url();
echo $OUTPUT->footer();
} else {
$event = \gradeexport_xls\event\grade_exported::create(array('context' => $context));
$event->trigger();
$export->print_grades();
}

1 change: 1 addition & 0 deletions grade/export/xls/lang/en/gradeexport_xls.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/

$string['eventgradeexported'] = 'XLS grade exported';
$string['pluginname'] = 'Excel spreadsheet';
$string['timeexported'] = 'Last downloaded from this course';
$string['xls:publish'] = 'Publish XLS grade export';
Expand Down
65 changes: 65 additions & 0 deletions grade/export/xls/tests/logging_test.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.

/**
* Events test.
*
* @package gradeexport_xls
* @copyright 2016 Zane Karl zkarl@oid.ucla.edu
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/

defined('MOODLE_INTERNAL') || die();

/**
* Resource events test cases.
*
* @package gradeexport_xls
* @copyright 2016 Zane Karl zkarl@oid.ucla.edu
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class xls_logging_events_testcase extends advanced_testcase {

/**
* Setup is called before calling test case.
*/
public function setUp() {
$this->resetAfterTest();
}

/**
* Test course_module_instance_list_viewed event.
*/
public function test_logging() {
// There is no proper API to call to trigger this event, so what we are
// doing here is simply making sure that the events returns the right information.
$course = $this->getDataGenerator()->create_course();
$params = array(
'context' => context_course::instance($course->id)
);
$event = \gradeexport_xls\event\grade_exported::create($params);
// Triggering and capturing the event.
$sink = $this->redirectEvents();
$event->trigger();
$events = $sink->get_events();
$this->assertCount(1, $events);
$event = reset($events);
// Checking that the event contains the expected values.
$this->assertInstanceOf('\gradeexport_xls\event\grade_exported', $event);
$this->assertEquals(context_course::instance($course->id), $event->get_context());
$this->assertEquals('xls', $event->get_export_type());
}
}
Loading

0 comments on commit 741bd4d

Please sign in to comment.