@@ -118,150 +118,6 @@ void t4() {
118118 }
119119 }
120120
121- @ Nested
122- @ DisplayName ("방 입장 처리" )
123- class HandleJoinRoomTest {
124-
125- @ Test
126- @ DisplayName ("정상 - 방 입장" )
127- void t5 () {
128- // given
129- HeartbeatMessage message = new HeartbeatMessage (userId );
130- doNothing ().when (sessionManager ).joinRoom (userId , roomId );
131-
132- // when
133- controller .handleJoinRoom (roomId , message , headerAccessor );
134-
135- // then
136- verify (sessionManager ).joinRoom (userId , roomId );
137- verify (errorHelper , never ()).sendInvalidRequestError (anyString (), anyString ());
138- verify (errorHelper , never ()).sendCustomExceptionToUser (anyString (), any ());
139- verify (errorHelper , never ()).sendGenericErrorToUser (anyString (), any (), anyString ());
140- }
141-
142- @ Test
143- @ DisplayName ("실패 - userId가 null" )
144- void t6 () {
145- // given
146- HeartbeatMessage message = new HeartbeatMessage (null );
147-
148- // when
149- controller .handleJoinRoom (roomId , message , headerAccessor );
150-
151- // then
152- verify (sessionManager , never ()).joinRoom (any (), any ());
153- verify (errorHelper ).sendInvalidRequestError (sessionId , "사용자 ID가 필요합니다" );
154- }
155-
156- @ Test
157- @ DisplayName ("실패 - CustomException 발생" )
158- void t7 () {
159- // given
160- HeartbeatMessage message = new HeartbeatMessage (userId );
161- CustomException exception = new CustomException (ErrorCode .NOT_ROOM_MEMBER );
162- doThrow (exception ).when (sessionManager ).joinRoom (userId , roomId );
163-
164- // when
165- controller .handleJoinRoom (roomId , message , headerAccessor );
166-
167- // then
168- verify (sessionManager ).joinRoom (userId , roomId );
169- verify (errorHelper ).sendCustomExceptionToUser (sessionId , exception );
170- }
171-
172- @ Test
173- @ DisplayName ("실패 - 일반 Exception 발생" )
174- void t8 () {
175- // given
176- HeartbeatMessage message = new HeartbeatMessage (userId );
177- RuntimeException exception = new RuntimeException ("예상치 못한 오류" );
178- doThrow (exception ).when (sessionManager ).joinRoom (userId , roomId );
179-
180- // when
181- controller .handleJoinRoom (roomId , message , headerAccessor );
182-
183- // then
184- verify (sessionManager ).joinRoom (userId , roomId );
185- verify (errorHelper ).sendGenericErrorToUser (
186- eq (sessionId ),
187- any (Exception .class ),
188- eq ("방 입장 중 오류가 발생했습니다" )
189- );
190- }
191- }
192-
193- @ Nested
194- @ DisplayName ("방 퇴장 처리" )
195- class HandleLeaveRoomTest {
196-
197- @ Test
198- @ DisplayName ("정상 - 방 퇴장" )
199- void t9 () {
200- // given
201- HeartbeatMessage message = new HeartbeatMessage (userId );
202- doNothing ().when (sessionManager ).leaveRoom (userId , roomId );
203-
204- // when
205- controller .handleLeaveRoom (roomId , message , headerAccessor );
206-
207- // then
208- verify (sessionManager ).leaveRoom (userId , roomId );
209- verify (errorHelper , never ()).sendInvalidRequestError (anyString (), anyString ());
210- verify (errorHelper , never ()).sendCustomExceptionToUser (anyString (), any ());
211- verify (errorHelper , never ()).sendGenericErrorToUser (anyString (), any (), anyString ());
212- }
213-
214- @ Test
215- @ DisplayName ("실패 - userId가 null" )
216- void t10 () {
217- // given
218- HeartbeatMessage message = new HeartbeatMessage (null );
219-
220- // when
221- controller .handleLeaveRoom (roomId , message , headerAccessor );
222-
223- // then
224- verify (sessionManager , never ()).leaveRoom (any (), any ());
225- verify (errorHelper ).sendInvalidRequestError (sessionId , "사용자 ID가 필요합니다" );
226- }
227-
228- @ Test
229- @ DisplayName ("실패 - CustomException 발생" )
230- void t11 () {
231- // given
232- HeartbeatMessage message = new HeartbeatMessage (userId );
233- CustomException exception = new CustomException (ErrorCode .NOT_ROOM_MEMBER );
234- doThrow (exception ).when (sessionManager ).leaveRoom (userId , roomId );
235-
236- // when
237- controller .handleLeaveRoom (roomId , message , headerAccessor );
238-
239- // then
240- verify (sessionManager ).leaveRoom (userId , roomId );
241- verify (errorHelper ).sendCustomExceptionToUser (sessionId , exception );
242- }
243-
244- @ Test
245- @ DisplayName ("실패 - 일반 Exception 발생" )
246- void t12 () {
247- // given
248- HeartbeatMessage message = new HeartbeatMessage (userId );
249- RuntimeException exception = new RuntimeException ("예상치 못한 오류" );
250- doThrow (exception ).when (sessionManager ).leaveRoom (userId , roomId );
251-
252- // when
253- controller .handleLeaveRoom (roomId , message , headerAccessor );
254-
255- // then
256- verify (sessionManager ).leaveRoom (userId , roomId );
257- verify (errorHelper ).sendGenericErrorToUser (
258- eq (sessionId ),
259- any (Exception .class ),
260- eq ("방 퇴장 중 오류가 발생했습니다" )
261- );
262- }
263- }
264-
265121 @ Nested
266122 @ DisplayName ("활동 신호 처리" )
267123 class HandleActivityTest {
0 commit comments