MDL-58087 core_calendar: Unit tests now jam with new vault behaviour
Some unit tests needed to be updated to specify a few extra bits and pieces on the events to work properly with the new event vault behaviour. Part of MDL-55611 epic.
This commit is contained in:
committed by
Dan Poltawski
parent
258a570563
commit
bd01fd15d4
@@ -81,9 +81,13 @@ class core_calendar_api_testcase extends advanced_testcase {
|
||||
*/
|
||||
public function test_get_events_with_disabled_module() {
|
||||
global $DB;
|
||||
|
||||
$this->setAdminUser();
|
||||
$generator = $this->getDataGenerator();
|
||||
$course = $generator->create_course();
|
||||
$assigngenerator = $this->getDataGenerator()->get_plugin_generator('mod_assign');
|
||||
$assigninstance = $assigngenerator->create_instance(['course' => $course->id]);
|
||||
$lessongenerator = $this->getDataGenerator()->get_plugin_generator('mod_lesson');
|
||||
$lessoninstance = $lessongenerator->create_instance(['course' => $course->id]);
|
||||
$student = $generator->create_user();
|
||||
$generator->enrol_user($student->id, $course->id, 'student');
|
||||
$this->setUser($student);
|
||||
@@ -96,7 +100,7 @@ class core_calendar_api_testcase extends advanced_testcase {
|
||||
'groupid' => 0,
|
||||
'userid' => 2,
|
||||
'modulename' => 'assign',
|
||||
'instance' => 1,
|
||||
'instance' => $assigninstance->id,
|
||||
'eventtype' => 'due',
|
||||
'timestart' => time(),
|
||||
'timeduration' => 86400,
|
||||
@@ -109,7 +113,7 @@ class core_calendar_api_testcase extends advanced_testcase {
|
||||
'groupid' => 0,
|
||||
'userid' => 2,
|
||||
'modulename' => 'lesson',
|
||||
'instance' => 1,
|
||||
'instance' => $lessoninstance->id,
|
||||
'eventtype' => 'end',
|
||||
'timestart' => time(),
|
||||
'timeduration' => 86400,
|
||||
@@ -269,7 +273,7 @@ class core_calendar_api_testcase extends advanced_testcase {
|
||||
'courseid' => SITEID,
|
||||
'groupid' => 0,
|
||||
'userid' => 2,
|
||||
'repeatid' => 1,
|
||||
'repeatid' => $event->id,
|
||||
'modulename' => '0',
|
||||
'instance' => 0,
|
||||
'eventtype' => 'site',
|
||||
@@ -284,7 +288,7 @@ class core_calendar_api_testcase extends advanced_testcase {
|
||||
'courseid' => SITEID,
|
||||
'groupid' => 0,
|
||||
'userid' => 2,
|
||||
'repeatid' => 1,
|
||||
'repeatid' => $event->id,
|
||||
'modulename' => '0',
|
||||
'instance' => 0,
|
||||
'eventtype' => 'site',
|
||||
@@ -414,7 +418,7 @@ class core_calendar_api_testcase extends advanced_testcase {
|
||||
'courseid' => $course->id,
|
||||
'modulename' => 'assign',
|
||||
'instance' => $moduleinstance->id,
|
||||
'userid' => 1,
|
||||
'userid' => $user->id,
|
||||
'eventtype' => 'user',
|
||||
'repeats' => 0,
|
||||
'timestart' => 1,
|
||||
|
||||
@@ -210,6 +210,7 @@ class core_calendar_container_testcase extends advanced_testcase {
|
||||
$event->timemodified = time();
|
||||
$event->timeduration = 0;
|
||||
$event->subscriptionid = null;
|
||||
$event->repeatid = 0;
|
||||
$legacyevent = $this->create_event($event);
|
||||
|
||||
// Update the id of the event that was created.
|
||||
@@ -276,7 +277,7 @@ class core_calendar_container_testcase extends advanced_testcase {
|
||||
'courseid' => 1,
|
||||
'groupid' => 1,
|
||||
'userid' => 1,
|
||||
'repeatid' => 1,
|
||||
'repeatid' => 0,
|
||||
'modulename' => 'assign',
|
||||
'instance' => 2,
|
||||
'eventtype' => 'due',
|
||||
|
||||
@@ -115,10 +115,11 @@ class core_calendar_event_factory_testcase extends advanced_testcase {
|
||||
'courseid' => 1,
|
||||
'groupid' => 1,
|
||||
'userid' => 1,
|
||||
'repeatid' => 1,
|
||||
'repeatid' => 0,
|
||||
'modulename' => 'assign',
|
||||
'instance' => 1,
|
||||
'eventtype' => 'due',
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION,
|
||||
'timestart' => 123456789,
|
||||
'timeduration' => 12,
|
||||
'timemodified' => 123456789,
|
||||
@@ -163,10 +164,11 @@ class core_calendar_event_factory_testcase extends advanced_testcase {
|
||||
'courseid' => 1,
|
||||
'groupid' => 1,
|
||||
'userid' => 1,
|
||||
'repeatid' => 1,
|
||||
'repeatid' => 0,
|
||||
'modulename' => 'assign',
|
||||
'instance' => 1,
|
||||
'eventtype' => 'due',
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION,
|
||||
'timestart' => 123456789,
|
||||
'timeduration' => 12,
|
||||
'timemodified' => 123456789,
|
||||
@@ -211,10 +213,11 @@ class core_calendar_event_factory_testcase extends advanced_testcase {
|
||||
'courseid' => 1,
|
||||
'groupid' => 1,
|
||||
'userid' => 1,
|
||||
'repeatid' => 1,
|
||||
'repeatid' => 0,
|
||||
'modulename' => 'assign',
|
||||
'instance' => 1,
|
||||
'eventtype' => 'due',
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION,
|
||||
'timestart' => 123456789,
|
||||
'timeduration' => 12,
|
||||
'timemodified' => 123456789,
|
||||
@@ -258,10 +261,11 @@ class core_calendar_event_factory_testcase extends advanced_testcase {
|
||||
'courseid' => $course->id,
|
||||
'groupid' => 1,
|
||||
'userid' => 1,
|
||||
'repeatid' => 1,
|
||||
'repeatid' => 0,
|
||||
'modulename' => 'assign',
|
||||
'instance' => 1,
|
||||
'eventtype' => 'due',
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION,
|
||||
'timestart' => 123456789,
|
||||
'timeduration' => 12,
|
||||
'timemodified' => 123456789,
|
||||
@@ -311,10 +315,11 @@ class core_calendar_event_factory_testcase extends advanced_testcase {
|
||||
'courseid' => $course->id,
|
||||
'groupid' => 1,
|
||||
'userid' => 1,
|
||||
'repeatid' => 1,
|
||||
'repeatid' => 0,
|
||||
'modulename' => 'assign',
|
||||
'instance' => $assigninstance->id,
|
||||
'eventtype' => 'due',
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION,
|
||||
'timestart' => 123456789,
|
||||
'timeduration' => 12,
|
||||
'timemodified' => 123456789,
|
||||
@@ -343,10 +348,11 @@ class core_calendar_event_factory_testcase extends advanced_testcase {
|
||||
'courseid' => 1,
|
||||
'groupid' => 1,
|
||||
'userid' => 1,
|
||||
'repeatid' => null,
|
||||
'repeatid' => 0,
|
||||
'modulename' => 'Test module',
|
||||
'instance' => 1,
|
||||
'eventtype' => 'Due',
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION,
|
||||
'timestart' => 123456789,
|
||||
'timeduration' => 123456789,
|
||||
'timemodified' => 123456789,
|
||||
@@ -375,10 +381,11 @@ class core_calendar_event_factory_testcase extends advanced_testcase {
|
||||
'courseid' => 1,
|
||||
'groupid' => 1,
|
||||
'userid' => 1,
|
||||
'repeatid' => null,
|
||||
'repeatid' => 0,
|
||||
'modulename' => 'Test module',
|
||||
'instance' => 1,
|
||||
'eventtype' => 'Due',
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION,
|
||||
'timestart' => 123456789,
|
||||
'timeduration' => 123456789,
|
||||
'timemodified' => 123456789,
|
||||
@@ -407,10 +414,11 @@ class core_calendar_event_factory_testcase extends advanced_testcase {
|
||||
'courseid' => 1,
|
||||
'groupid' => 1,
|
||||
'userid' => 1,
|
||||
'repeatid' => null,
|
||||
'repeatid' => 0,
|
||||
'modulename' => 'Test module',
|
||||
'instance' => 1,
|
||||
'eventtype' => 'Due',
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION,
|
||||
'timestart' => 123456789,
|
||||
'timeduration' => 123456789,
|
||||
'timemodified' => 123456789,
|
||||
|
||||
@@ -28,6 +28,7 @@ global $CFG;
|
||||
require_once($CFG->dirroot . '/calendar/tests/helpers.php');
|
||||
|
||||
use core_calendar\local\event\data_access\event_vault;
|
||||
use core_calendar\local\event\strategies\raw_event_retrieval_strategy;
|
||||
|
||||
/**
|
||||
* This file contains the class that handles testing of the calendar event vault.
|
||||
@@ -44,11 +45,13 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
*/
|
||||
public function test_get_action_events_by_timesort_after_time() {
|
||||
$this->resetAfterTest(true);
|
||||
$this->setAdminuser();
|
||||
|
||||
$user = $this->getDataGenerator()->create_user();
|
||||
$factory = new action_event_test_factory();
|
||||
$vault = new event_vault($factory);
|
||||
$strategy = new raw_event_retrieval_strategy();
|
||||
$vault = new event_vault($factory, $strategy);
|
||||
|
||||
$this->setUser($user);
|
||||
|
||||
for ($i = 1; $i < 6; $i++) {
|
||||
create_event([
|
||||
@@ -87,7 +90,8 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
|
||||
$user = $this->getDataGenerator()->create_user();
|
||||
$factory = new action_event_test_factory();
|
||||
$vault = new event_vault($factory);
|
||||
$strategy = new raw_event_retrieval_strategy();
|
||||
$vault = new event_vault($factory, $strategy);
|
||||
|
||||
for ($i = 1; $i < 6; $i++) {
|
||||
create_event([
|
||||
@@ -95,7 +99,8 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
'eventtype' => 'user',
|
||||
'userid' => $user->id,
|
||||
'timesort' => $i,
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION,
|
||||
'courseid' => 1
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -126,7 +131,8 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
|
||||
$user = $this->getDataGenerator()->create_user();
|
||||
$factory = new action_event_test_factory();
|
||||
$vault = new event_vault($factory);
|
||||
$strategy = new raw_event_retrieval_strategy();
|
||||
$vault = new event_vault($factory, $strategy);
|
||||
|
||||
for ($i = 1; $i < 6; $i++) {
|
||||
create_event([
|
||||
@@ -134,7 +140,8 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
'eventtype' => 'user',
|
||||
'userid' => $user->id,
|
||||
'timesort' => $i,
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION,
|
||||
'courseid' => 1
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -162,7 +169,8 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
|
||||
$user = $this->getDataGenerator()->create_user();
|
||||
$factory = new action_event_test_factory();
|
||||
$vault = new event_vault($factory);
|
||||
$strategy = new raw_event_retrieval_strategy();
|
||||
$vault = new event_vault($factory, $strategy);
|
||||
|
||||
$records = [];
|
||||
for ($i = 1; $i < 21; $i++) {
|
||||
@@ -171,7 +179,8 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
'eventtype' => 'user',
|
||||
'userid' => $user->id,
|
||||
'timesort' => $i,
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION,
|
||||
'courseid' => 1
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -201,7 +210,8 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
$factory = new action_event_test_factory(function($actionevent) {
|
||||
return ($actionevent->get_id() % 2) ? false : true;
|
||||
});
|
||||
$vault = new event_vault($factory);
|
||||
$strategy = new raw_event_retrieval_strategy();
|
||||
$vault = new event_vault($factory, $strategy);
|
||||
|
||||
for ($i = 1; $i < 41; $i++) {
|
||||
create_event([
|
||||
@@ -209,7 +219,8 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
'eventtype' => 'user',
|
||||
'userid' => $user->id,
|
||||
'timesort' => $i,
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION,
|
||||
'courseid' => 1
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -255,7 +266,8 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
return true;
|
||||
}
|
||||
});
|
||||
$vault = new event_vault($factory);
|
||||
$strategy = new raw_event_retrieval_strategy();
|
||||
$vault = new event_vault($factory, $strategy);
|
||||
|
||||
for ($i = 1; $i < 21; $i++) {
|
||||
create_event([
|
||||
@@ -263,7 +275,8 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
'eventtype' => 'user',
|
||||
'userid' => $user->id,
|
||||
'timesort' => $i,
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION,
|
||||
'courseid' => 1
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -289,7 +302,8 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
|
||||
$user = $this->getDataGenerator()->create_user();
|
||||
$factory = new action_event_test_factory();
|
||||
$vault = new event_vault($factory);
|
||||
$strategy = new raw_event_retrieval_strategy();
|
||||
$vault = new event_vault($factory, $strategy);
|
||||
|
||||
/**
|
||||
* The events should be ordered by timesort as follows:
|
||||
@@ -322,7 +336,8 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
'eventtype' => 'user',
|
||||
'userid' => $user->id,
|
||||
'timesort' => $i,
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION,
|
||||
'courseid' => 1
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -332,7 +347,8 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
'eventtype' => 'user',
|
||||
'userid' => $user->id,
|
||||
'timesort' => $i,
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION
|
||||
'type' => CALENDAR_EVENT_TYPE_ACTION,
|
||||
'courseid' => 1
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -396,7 +412,6 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
// value larger than the upper boundary of this query (9 > 8). Confirm
|
||||
// that the given $afterevent is used for filtering events.
|
||||
$events = $vault->get_action_events_by_timesort($user, 3, 8, $afterevent);
|
||||
|
||||
$this->assertEmpty($events);
|
||||
}
|
||||
|
||||
@@ -409,7 +424,8 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
$course1 = $this->getDataGenerator()->create_course();
|
||||
$course2 = $this->getDataGenerator()->create_course();
|
||||
$factory = new action_event_test_factory();
|
||||
$vault = new event_vault($factory);
|
||||
$strategy = new raw_event_retrieval_strategy();
|
||||
$vault = new event_vault($factory, $strategy);
|
||||
|
||||
$this->resetAfterTest(true);
|
||||
$this->setAdminuser();
|
||||
@@ -439,7 +455,6 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
}
|
||||
|
||||
$events = $vault->get_action_events_by_course($user, $course1, 3);
|
||||
|
||||
$this->assertCount(3, $events);
|
||||
$this->assertEquals('Event 3', $events[0]->get_name());
|
||||
$this->assertEquals('Event 4', $events[1]->get_name());
|
||||
@@ -464,7 +479,8 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
$course1 = $this->getDataGenerator()->create_course();
|
||||
$course2 = $this->getDataGenerator()->create_course();
|
||||
$factory = new action_event_test_factory();
|
||||
$vault = new event_vault($factory);
|
||||
$strategy = new raw_event_retrieval_strategy();
|
||||
$vault = new event_vault($factory, $strategy);
|
||||
|
||||
$this->resetAfterTest(true);
|
||||
$this->setAdminuser();
|
||||
@@ -519,7 +535,8 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
$course1 = $this->getDataGenerator()->create_course();
|
||||
$course2 = $this->getDataGenerator()->create_course();
|
||||
$factory = new action_event_test_factory();
|
||||
$vault = new event_vault($factory);
|
||||
$strategy = new raw_event_retrieval_strategy();
|
||||
$vault = new event_vault($factory, $strategy);
|
||||
|
||||
$this->resetAfterTest(true);
|
||||
$this->setAdminuser();
|
||||
@@ -571,7 +588,8 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
$course1 = $this->getDataGenerator()->create_course();
|
||||
$course2 = $this->getDataGenerator()->create_course();
|
||||
$factory = new action_event_test_factory();
|
||||
$vault = new event_vault($factory);
|
||||
$strategy = new raw_event_retrieval_strategy();
|
||||
$vault = new event_vault($factory, $strategy);
|
||||
$records = [];
|
||||
|
||||
$this->resetAfterTest(true);
|
||||
@@ -626,7 +644,8 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
$factory = new action_event_test_factory(function($actionevent) {
|
||||
return ($actionevent->get_id() % 2) ? false : true;
|
||||
});
|
||||
$vault = new event_vault($factory);
|
||||
$strategy = new raw_event_retrieval_strategy();
|
||||
$vault = new event_vault($factory, $strategy);
|
||||
|
||||
$this->resetAfterTest(true);
|
||||
$this->setAdminuser();
|
||||
@@ -696,7 +715,8 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
return true;
|
||||
}
|
||||
});
|
||||
$vault = new event_vault($factory);
|
||||
$strategy = new raw_event_retrieval_strategy();
|
||||
$vault = new event_vault($factory, $strategy);
|
||||
|
||||
$this->resetAfterTest(true);
|
||||
$this->setAdminuser();
|
||||
@@ -749,7 +769,8 @@ class core_calendar_event_vault_testcase extends advanced_testcase {
|
||||
$course1 = $this->getDataGenerator()->create_course();
|
||||
$course2 = $this->getDataGenerator()->create_course();
|
||||
$factory = new action_event_test_factory();
|
||||
$vault = new event_vault($factory);
|
||||
$strategy = new raw_event_retrieval_strategy();
|
||||
$vault = new event_vault($factory, $strategy);
|
||||
|
||||
$this->setAdminuser();
|
||||
$this->getDataGenerator()->enrol_user($user->id, $course1->id);
|
||||
|
||||
@@ -32,12 +32,13 @@ use core_calendar\local\data_access\event_vault;
|
||||
use core_calendar\local\event\entities\action_event;
|
||||
use core_calendar\local\event\entities\event;
|
||||
use core_calendar\local\event\entities\repeat_event_collection;
|
||||
use core_calendar\local\event\proxies\std_proxy;
|
||||
use core_calendar\local\event\value_objects\action;
|
||||
use core_calendar\local\event\value_objects\event_course_module;
|
||||
use core_calendar\local\event\value_objects\event_description;
|
||||
use core_calendar\local\event\value_objects\event_times;
|
||||
use core_calendar\local\event\value_objects\event_course_module;
|
||||
use core_calendar\local\event\proxies\std_proxy;
|
||||
use core_calendar\local\interfaces\event_factory_interface;
|
||||
use core_calendar\local\interfaces\raw_event_retrieval_strategy_interface;
|
||||
|
||||
/**
|
||||
* Create a calendar event with the given properties.
|
||||
|
||||
@@ -85,7 +85,7 @@ class core_calendar_raw_event_retrieval_strategy_testcase extends advanced_testc
|
||||
}
|
||||
|
||||
// Get all events.
|
||||
$events = $retrievalstrategy->get_raw_events(true, 0, true, null, null, null, null);
|
||||
$events = $retrievalstrategy->get_raw_events(null, [0], null);
|
||||
$this->assertCount(2, $events);
|
||||
|
||||
// Disable the lesson module.
|
||||
@@ -94,7 +94,7 @@ class core_calendar_raw_event_retrieval_strategy_testcase extends advanced_testc
|
||||
$DB->update_record('modules', $modulerecord);
|
||||
|
||||
// Check that we only return the assign event.
|
||||
$events = $retrievalstrategy->get_raw_events(true, 0, true, null, null, null, null);
|
||||
$events = $retrievalstrategy->get_raw_events(null, [0], null);
|
||||
$this->assertCount(1, $events);
|
||||
$event = reset($events);
|
||||
$this->assertEquals('assign', $event->modulename);
|
||||
|
||||
Reference in New Issue
Block a user