MDL-78129 core_communication: Add update membership api

This commit is contained in:
Safat
2023-09-21 13:28:20 +08:00
committed by Andrew Nicols
parent 9890e67e6d
commit 3e47253787
8 changed files with 222 additions and 4 deletions
+40
View File
@@ -428,4 +428,44 @@ class processor_test extends \advanced_testcase {
set_config('disabled', 1, $communicationprovider);
$this->assertFalse(processor::is_provider_enabled($communicationprovider));
}
/**
* Test delete flagged user id's return correct users.
*
* @covers ::get_all_delete_flagged_userids
*/
public function test_get_all_delete_flagged_userids(): void {
$this->resetAfterTest();
$course = $this->get_course('Sampleroom', 'none');
$user1 = $this->getDataGenerator()->create_user()->id;
$user2 = $this->getDataGenerator()->create_user()->id;
// Sample data.
$communicationroomname = 'Sampleroom';
$selectedcommunication = 'communication_matrix';
$component = 'core_course';
$instancetype = 'coursecommunication';
// Load the communication api.
$communication = \core_communication\api::load_by_instance(
'core_course',
'coursecommunication',
$course->id
);
$communication->create_and_configure_room($selectedcommunication, $communicationroomname);
$communication->add_members_to_room([$user1, $user2]);
// Now remove user1 from the room.
$communication->remove_members_from_room([$user1]);
// Test against the object.
$communicationprocessor = processor::load_by_instance(
$component,
$instancetype,
$course->id
);
$this->assertEquals([$user1], $communicationprocessor->get_all_delete_flagged_userids());
}
}