### Question:
StatelessOperations implements SessionOperations { @Override public void logout(final Session session) throws SessionException { if (session instanceof StatelessSession) { SessionInfo sessionInfo = statelessSessionFactory.getSessionInfo(session.getID()); sessionLogging.logEvent(sessionInfo, SessionEvent.LOGOUT); if (sessionAuditor != null) { sessionAuditor.auditActivity(sessionInfo, AM_SESSION_LOGGED_OUT); } } sessionBlacklist.blacklist(session); } @Inject  StatelessOperations(final LocalOperations localOperations,
                               final SessionService sessionService,
                               final StatelessSessionFactory statelessSessionFactory,
                               final SessionBlacklist sessionBlacklist,
                               final SessionLogging sessionLogging,
                               final SessionAuditor sessionAuditor); @Override SessionInfo refresh(final Session session, final boolean reset); @Override void logout(final Session session); @Override void destroy(final Session requester, final Session session); @Override void setProperty(final Session session, final String name, final String value);  }### Answer:
@Test public void shouldBlacklistSessionOnLogout() throws Exception { statelessOperations.logout(mockSession); verify(mockSessionLogging).logEvent( mockSessionFactory.getSessionInfo(mockSession.getSessionID()), SessionEvent.LOGOUT); verify(mockSessionBlacklist).blacklist(mockSession); }