X-Git-Url: http://git.moodle.org/gw?p=moodle.git;a=blobdiff_plain;f=message%2Ftests%2Fexternallib_test.php;h=1d2667dfdffef9e36209f4da7fc3cf774f273b1a;hp=6ea79a40ecdb32c71dc873266d85d6d88f6a2a80;hb=d0b05c8d05592d3d3418ae22ecbe40b6f4ab725e;hpb=c3e419e4dc3654ee5e88c837ac14123443102d26 diff --git a/message/tests/externallib_test.php b/message/tests/externallib_test.php index 6ea79a40ecd..1d2667dfdff 100644 --- a/message/tests/externallib_test.php +++ b/message/tests/externallib_test.php @@ -4889,4 +4889,31 @@ class core_message_externallib_testcase extends externallib_advanced_testcase { $this->assertEquals($user2->id, $request2->userid); $this->assertEquals($user3->id, $request2->requesteduserid); } + + /** + * Test returning members in a conversation when you are not a member. + */ + public function test_get_conversation_members_not_a_member() { + $this->resetAfterTest(); + + $user1 = self::getDataGenerator()->create_user(); + $user2 = self::getDataGenerator()->create_user(); + + // This user will not be in the conversation. + $user3 = self::getDataGenerator()->create_user(); + + $conversation = \core_message\api::create_conversation( + \core_message\api::MESSAGE_CONVERSATION_TYPE_GROUP, + [ + $user1->id, + $user2->id, + ] + ); + $conversationid = $conversation->id; + + $this->setUser($user3); + + $this->expectException('moodle_exception'); + core_message_external::get_conversation_members($user3->id, $conversationid); + } }