MDL-63547 core_message: deprecated api::delete_conversation()

This commit is contained in:
Mark Nelson 2018-10-14 14:03:03 +08:00
parent 08cb8a34f9
commit 263ad98436
5 changed files with 78 additions and 4 deletions

View file

@ -1181,6 +1181,58 @@ class core_message_api_testcase extends core_message_messagelib_testcase {
// Delete the conversation as user 1.
\core_message\api::delete_conversation($user1->id, $user2->id);
$this->assertDebuggingCalled();
$muas = $DB->get_records('message_user_actions', array(), 'timecreated ASC');
$this->assertCount(4, $muas);
// Sort by id.
ksort($muas);
$mua1 = array_shift($muas);
$mua2 = array_shift($muas);
$mua3 = array_shift($muas);
$mua4 = array_shift($muas);
$this->assertEquals($user1->id, $mua1->userid);
$this->assertEquals($m1id, $mua1->messageid);
$this->assertEquals(\core_message\api::MESSAGE_ACTION_DELETED, $mua1->action);
$this->assertEquals($user1->id, $mua2->userid);
$this->assertEquals($m2id, $mua2->messageid);
$this->assertEquals(\core_message\api::MESSAGE_ACTION_DELETED, $mua2->action);
$this->assertEquals($user1->id, $mua3->userid);
$this->assertEquals($m3id, $mua3->messageid);
$this->assertEquals(\core_message\api::MESSAGE_ACTION_DELETED, $mua3->action);
$this->assertEquals($user1->id, $mua4->userid);
$this->assertEquals($m4id, $mua4->messageid);
$this->assertEquals(\core_message\api::MESSAGE_ACTION_DELETED, $mua4->action);
}
/**
* Tests deleting a conversation by conversation id.
*/
public function test_delete_conversation_by_id() {
global $DB;
// Create some users.
$user1 = self::getDataGenerator()->create_user();
$user2 = self::getDataGenerator()->create_user();
// The person doing the search.
$this->setUser($user1);
// Send some messages back and forth.
$time = 1;
$m1id = $this->send_fake_message($user1, $user2, 'Yo!', 0, $time + 1);
$m2id = $this->send_fake_message($user2, $user1, 'Sup mang?', 0, $time + 2);
$m3id = $this->send_fake_message($user1, $user2, 'Writing PHPUnit tests!', 0, $time + 3);
$m4id = $this->send_fake_message($user2, $user1, 'Word.', 0, $time + 4);
// Delete the conversation as user 1.
$conversationid = \core_message\api::get_conversation_between_users([$user1->id, $user2->id]);
\core_message\api::delete_conversation_by_id($user1->id, $conversationid);
$muas = $DB->get_records('message_user_actions', array(), 'timecreated ASC');
$this->assertCount(4, $muas);

View file

@ -364,6 +364,7 @@ class core_message_events_testcase extends core_message_messagelib_testcase {
// Trigger and capture the event.
$sink = $this->redirectEvents();
\core_message\api::delete_conversation($user1->id, $user2->id);
$this->assertDebuggingCalled();
$events = $sink->get_events();
// Get the user actions for the messages deleted by that user.