diff --git a/src/transformer/get_event_function_map.php b/src/transformer/get_event_function_map.php index 6ef9b2660..253613de7 100644 --- a/src/transformer/get_event_function_map.php +++ b/src/transformer/get_event_function_map.php @@ -56,6 +56,7 @@ function get_event_function_map() { '\core\event\course_module_completion_updated' => 'core\course_module_completion_updated', '\mod_assign\event\assessable_submitted' => 'mod_assign\assignment_submitted', '\mod_assign\event\submission_graded' => 'mod_assign\assignment_graded', + '\mod_assign\event\course_module_viewed' => 'all\course_module_viewed', '\mod_bigbluebuttonbn\event\activity_viewed' => 'mod_bigbluebuttonbn\activity_viewed', '\mod_bigbluebuttonbn\event\activity_management_viewed' => 'mod_bigbluebuttonbn\activity_management_viewed', '\mod_bigbluebuttonbn\event\live_session_event' => 'mod_bigbluebuttonbn\live_session', diff --git a/tests/mod_assign/course_module_viewed/existing_module/data.json b/tests/mod_assign/course_module_viewed/existing_module/data.json new file mode 100644 index 000000000..92a47ecc5 --- /dev/null +++ b/tests/mod_assign/course_module_viewed/existing_module/data.json @@ -0,0 +1,14 @@ +{ + "modules": [ + { + "id": 1, + "name": "assign" + } + ], + "assign": [ + { + "id": 1, + "name": "test_name" + } + ] +} diff --git a/tests/mod_assign/course_module_viewed/existing_module/event.json b/tests/mod_assign/course_module_viewed/existing_module/event.json new file mode 100644 index 000000000..b0dd18e3f --- /dev/null +++ b/tests/mod_assign/course_module_viewed/existing_module/event.json @@ -0,0 +1,8 @@ +{ + "id": 1, + "userid": 1, + "courseid": 1, + "timecreated": 1433946701, + "contextinstanceid": 1, + "eventname": "\\mod_assign\\event\\course_module_viewed" +} diff --git a/tests/mod_assign/course_module_viewed/existing_module/existing_module_test.php b/tests/mod_assign/course_module_viewed/existing_module/existing_module_test.php new file mode 100644 index 000000000..f2deecc40 --- /dev/null +++ b/tests/mod_assign/course_module_viewed/existing_module/existing_module_test.php @@ -0,0 +1,70 @@ +. + +namespace logstore_xapi\mod_assign\course_module_viewed\existing_module; + +defined('MOODLE_INTERNAL') || die(); + +global $CFG; + +require_once($CFG->dirroot . '/admin/tool/log/store/xapi/tests/xapi_test_case.php'); + +/** + * Unit test for mod_assign module viewed event. + * + * @package logstore_xapi + * @copyright Milt Reder + * @license https://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class existing_module_test extends \logstore_xapi\xapi_test_case { + + /** + * Retrieve the directory of the unit test. + * + * @return string + */ + protected function get_test_dir() { + return __DIR__; + } + + /** + * Retrieve the plugin type being tested. + * + * @return string + */ + protected function get_plugin_type() { + return "mod"; + } + + /** + * Retrieve the plugin name being tested. + * + * @return string + */ + protected function get_plugin_name() { + return "assign"; + } + + /** + * Appease auto-detecting of test cases. xapi_test_case has default test cases. + * + * @covers ::course_module_viewed + * @return void + */ + public function test_init() { + + } +} diff --git a/tests/mod_assign/course_module_viewed/existing_module/statements.json b/tests/mod_assign/course_module_viewed/existing_module/statements.json new file mode 100644 index 000000000..20ca6e6a9 --- /dev/null +++ b/tests/mod_assign/course_module_viewed/existing_module/statements.json @@ -0,0 +1,71 @@ +[ + { + "actor": { + "name": "test_fullname", + "account": { + "homePage": "http://www.example.org", + "name": "1" + } + }, + "verb": { + "id": "http://id.tincanapi.com/verb/viewed", + "display": { + "en": "viewed" + } + }, + "object": { + "id": "http://www.example.org/mod/assign/view.php?id=1", + "definition": { + "type": "https://xapi.edlm/profiles/edlm-lms/concepts/activity-types/assignment", + "name": { + "en": "test_name" + } + } + }, + "context": { + "language": "en", + "extensions": { + "http://lrs.learninglocker.net/define/extensions/info": { + "http://moodle.org": "1.0.0", + "https://github.com/xAPI-vle/moodle-logstore_xapi": "0.0.0-development", + "event_name": "\\mod_assign\\event\\course_module_viewed", + "event_function": "\\src\\transformer\\events\\all\\course_module_viewed" + } + }, + "contextActivities": { + "parent": [ + { + "id": "http://www.example.org/course/section.php?id=1", + "objectType": "Activity", + "definition": { + "name": { + "en": "test_name Section 0" + }, + "type": "http://id.tincanapi.com/activitytype/section" + } + }, + { + "id": "http://www.example.org/course/view.php?id=1", + "definition": { + "type": "https://w3id.org/xapi/cmi5/activitytype/course", + "name": { + "en": "test_name" + } + } + } + ], + "category": [ + { + "id": "http://www.example.org", + "definition": { + "type": "http://id.tincanapi.com/activitytype/lms", + "name": { + "en": "test_name" + } + } + } + ] + } + } + } +]