diff --git a/lib/Controller/RoomController.php b/lib/Controller/RoomController.php index fbe1634d079..a7774d0534a 100644 --- a/lib/Controller/RoomController.php +++ b/lib/Controller/RoomController.php @@ -1189,8 +1189,7 @@ public function removeAttendeeFromRoom(int $attendeeId): DataResponse { } if ($this->participant->getAttendee()->getId() === $targetParticipant->getAttendee()->getId()) { - // FIXME switch to removeSelfFromRoomLogic() - return new DataResponse([], Http::STATUS_FORBIDDEN); + return $this->removeSelfFromRoomLogic($this->room, $targetParticipant); } if ($targetParticipant->getAttendee()->getParticipantType() === Participant::OWNER) { diff --git a/tests/integration/features/bootstrap/FeatureContext.php b/tests/integration/features/bootstrap/FeatureContext.php index 45001b263c0..6cb88c67d38 100644 --- a/tests/integration/features/bootstrap/FeatureContext.php +++ b/tests/integration/features/bootstrap/FeatureContext.php @@ -1010,7 +1010,9 @@ public function userAddAttendeeToRoom(string $user, string $newType, string $new * @param string $apiVersion */ public function userPromoteDemoteInRoom(string $user, string $isPromotion, string $participant, string $identifier, int $statusCode, string $apiVersion): void { - if (strpos($participant, 'guest') === 0) { + if ($participant === 'stranger') { + $attendeeId = 123456789; + } elseif (strpos($participant, 'guest') === 0) { $sessionId = self::$userToSessionId[$participant]; $attendeeId = $this->getAttendeeId('guests', sha1($sessionId), $identifier, $statusCode === 200 ? $user : null); } else { diff --git a/tests/integration/features/conversation/one-to-one.feature b/tests/integration/features/conversation/one-to-one.feature index d32c55ffce1..2a07265aef3 100644 --- a/tests/integration/features/conversation/one-to-one.feature +++ b/tests/integration/features/conversation/one-to-one.feature @@ -125,7 +125,7 @@ Feature: one-to-one And user "participant1" is participant of room "room10" (v4) And user "participant3" is not participant of room "room10" (v4) And user "participant1" loads attendees attendee ids in room "room10" (v4) - When user "participant1" promotes "participant3" in room "room10" with 404 (v4) + When user "participant1" promotes "stranger" in room "room10" with 404 (v4) Scenario: User1 invites user2 to a one2one room and demote non-invited user Given user "participant1" creates room "room11" (v4) @@ -134,7 +134,7 @@ Feature: one-to-one And user "participant1" is participant of room "room11" (v4) And user "participant3" is not participant of room "room11" (v4) And user "participant1" loads attendees attendee ids in room "room11" (v4) - When user "participant1" demotes "participant3" in room "room11" with 404 (v4) + When user "participant1" demotes "stranger" in room "room11" with 404 (v4) Scenario: User1 invites user2 to a one2one room twice, it's the same room Given user "participant1" creates room "room12" (v4)