@@ -14,10 +14,12 @@ import org.mockito.Mockito.mock
1414import org.mockito.kotlin.whenever
1515import pp.api.data.ChangeName
1616import pp.api.data.ChatMessage
17+ import pp.api.data.ClientBroadcast
1718import pp.api.data.GamePhase.CARDS_REVEALED
1819import pp.api.data.GamePhase.PLAYING
1920import pp.api.data.LogEntry
2021import pp.api.data.LogLevel.CHAT
22+ import pp.api.data.LogLevel.CLIENT_BROADCAST
2123import pp.api.data.LogLevel.INFO
2224import pp.api.data.PlayCard
2325import pp.api.data.RevealCards
@@ -376,8 +378,9 @@ class RoomsTest {
376378 3 , rooms.getRooms().first().log
377379 .size
378380 )
379- assertTrue(rooms.getRooms().first().log
380- .any { it.level == INFO && " tried to change game phase" in it.message })
381+ assertTrue(
382+ rooms.getRooms().first().log
383+ .any { it.level == INFO && " tried to change game phase" in it.message })
381384 }
382385
383386 @Test
@@ -444,8 +447,27 @@ class RoomsTest {
444447 2 , rooms.getRooms().first().log
445448 .size
446449 )
447- assertTrue(rooms.getRooms().first().log
448- .any { it.level == INFO && " tried to change game phase" in it.message })
450+ assertTrue(
451+ rooms.getRooms().first().log
452+ .any { it.level == INFO && " tried to change game phase" in it.message })
453+ }
454+
455+ @Test
456+ fun canBroadcastMessages () {
457+ val rooms = Rooms ()
458+ val remote = mock(Async ::class .java)
459+ val session = mock(Session ::class .java)
460+ whenever(session.asyncRemote).thenReturn(remote)
461+ whenever(remote.sendObject(any())).thenReturn(constantFuture(null ))
462+ val user = User (" username" , SPECTATOR , " 7" , session)
463+ whenever(session.id).thenReturn(" new-session-id" )
464+ rooms.ensureRoomContainsUser(" nice-id" , user)
465+ rooms.submitUserRequest(ClientBroadcast (" nice broadcast message" ), session)
466+ assertEquals(
467+ LogEntry (level = CLIENT_BROADCAST , message = " nice broadcast message" ),
468+ rooms.getRooms().first().log
469+ .last()
470+ )
449471 }
450472
451473 @Test
0 commit comments