GameController { @RequestMapping(value = "sessions", method = RequestMethod.GET) @ResponseBody public Map<Long, List<String>> getSessions() { return Multimaps.asMap(sessionManager.getSessions()); } @Autowired  GameController(SessionManager sessionManager, MessagingUtils messagingUtils); @RequestMapping(value = "joinSession", method = RequestMethod.POST) void joinSession(
            @RequestParam(name = "sessionId") final Long sessionId,
            @RequestParam(name = "userName") final String userName
    ); @RequestMapping(value = "createSession", method = RequestMethod.POST) long createSession(
            @RequestParam(name = "userName") final String userName
    ); @RequestMapping(value = "logout", method = RequestMethod.POST) void leaveSession(
            @RequestParam(name = "userName") final String userName,
            @RequestParam(name = "sessionId") final Long sessionId
    ); @RequestMapping(value = "refresh", method = RequestMethod.GET) void refresh(
            @RequestParam(name = "sessionId") final Long sessionId
    ); @RequestMapping(value = "sessionUsers", method = RequestMethod.GET) List<String> getSessionUsers(
            @RequestParam(name = "sessionId") final Long sessionId
    ); @RequestMapping(value = "sessions", method = RequestMethod.GET) @ResponseBody Map<Long, List<String>> getSessions(); @RequestMapping(value = "reset", method = RequestMethod.POST) void reset(
            @RequestParam(name = "sessionId") final Long sessionId,
            @RequestParam(name = "userName") final String userName
    );  }
@Test public void testGetSessions() throws Exception { final ListMultimap<Long, String> expectedSessions = ArrayListMultimap.create(); expectedSessions.put(SESSION_ID, USER_NAME); when(sessionManager.getSessions()).thenReturn(expectedSessions); final Map<Long, List<String>> results = gameController.getSessions(); assertEquals(expectedSessions.asMap(), results); verify(sessionManager, times(1)).getSessions(); verifyNoMoreInteractions(sessionManager); }