### Question:
RedisStore extends AbstractLifecycle implements RedisStoreManagement, Store { @Override public Session load(final String id) { return this.lockTemplate.withReadLock(new LockTemplate.LockedOperation<Session>() { @Override public Session invoke() { try { byte[] session = RedisStore.this.jedisClient.get(id); return session == null ? RedisStore.this.manager.createSession(id) : RedisStore.this.sessionSerializationUtils.deserialize(session); } catch (JedisConnectionException e) { return logAndCreateEmptySession(id, e); } catch (ClassNotFoundException e) { return logAndCreateEmptySession(id, e); } catch (IOException e) { return logAndCreateEmptySession(id, e); } } }); } RedisStore();   RedisStore(JmxSupport jmxSupport, PropertyChangeSupport propertyChangeSupport,
               SessionSerializationUtils sessionSerializationUtils, JedisClient jedisClient); @Override void addPropertyChangeListener(PropertyChangeListener propertyChangeListener); @Override void clear(); @Override int getConnectionPoolSize(); void setConnectionPoolSize(final int connectionPoolSize); @Override int getDatabase(); void setDatabase(final int database); @Override String getSessionKeyPrefix(); void setSessionKeyPrefix(final String sessionKeyPrefix); @Override String getHost(); void setHost(final String host); @Override Manager getManager(); @Override void setManager(final Manager manager); @Override String getPassword(); void setPassword(final String password); @Override int getPort(); void setPort(final int port); @Override int getSize(); @Override int getTimeout(); void setTimeout(final int timeout); @Override String getUri(); @Override boolean getCluster(); void setCluster(final boolean cluster); void setUri(final String uri); @Override String[] keys(); @Override Session load(final String id); @Override void remove(final String id); @Override void removePropertyChangeListener(PropertyChangeListener propertyChangeListener); @Override void save(final Session session); static final int DEFAULT_SO_TIMEOUT; }### Answer:
@Test public void load() throws IOException { Session session = new StandardSession(this.manager); session.setId("test-id"); byte[] response = this.sessionSerializationUtils.serialize(session); when(this.jedisClient.get("test-id")).thenReturn(response); Session result = this.store.load("test-id"); assertEquals(session.getId(), result.getId()); }