@Nonnull protected SessionManager createSessionManager() { final SessionManager manager = mock( SessionManager.class ); final StandardContext context = createContext(); when( manager.getContext() ).thenReturn(context); // needed for createSession when( manager.getContainer() ).thenReturn(context); // needed for createSession when( manager.getMemcachedSessionService() ).thenReturn(newMemcachedSessionService(manager)); when( manager.newMemcachedBackupSession() ).thenReturn( new MemcachedBackupSession( manager ) ); when( manager.willAttributeDistribute(anyString(), anyObject())).thenReturn(true); return manager; }
@BeforeMethod public void setup() throws LifecycleException, ClassNotFoundException, IOException { _manager = mock( SessionManager.class ); final Context context = new StandardContext(); when( _manager.getContext() ).thenReturn( context ); // needed for createSession // Manager.getContainer no longer available in tc 8.5+ if(_managerHasGetContainer) { when( _manager.getContainer() ).thenReturn( context ); } when( _manager.newMemcachedBackupSession() ).thenAnswer(new Answer<MemcachedBackupSession>() { @Override public MemcachedBackupSession answer(final InvocationOnMock invocation) throws Throwable { return newMemcachedBackupSession( _manager ); } }); final MemcachedSessionService service = new DummyMemcachedSessionService<SessionManager>( _manager ); when( _manager.createSession( anyString() ) ).thenAnswer(new Answer<MemcachedBackupSession>() { @Override public MemcachedBackupSession answer(final InvocationOnMock invocation) throws Throwable { return createSession(service); } }); when( _manager.readPrincipal( (ObjectInputStream)any() ) ).thenReturn( createPrincipal() ); when( _manager.getMemcachedSessionService() ).thenReturn( service ); when( _manager.willAttributeDistribute(anyString(), any())).thenReturn(true); }