### Question:
JedisClusterClient implements JedisClient { @Override public void set(String key, String sessionsKey, byte[] session, int timeout) throws UnsupportedEncodingException { jedisCluster.setex(key.getBytes(Protocol.CHARSET), timeout, session); jedisCluster.sadd(sessionsKey, key); } JedisClusterClient(JedisCluster jedisCluster); @Override Set<String> getSessions(String sessionsKey); @Override void del(String sessionsKey, String key); @Override Integer count(String sessionsKey); @Override byte[] get(String key); @Override void set(String key, String sessionsKey, byte[] session, int timeout); @Override void clean(String sessionsKey); @Override void close();  }### Answer:
@Test public void set() throws UnsupportedEncodingException { byte[] session = "session".getBytes(); this.jedisPoolTemplate.set("key", SESSIONS_KEY, session, timeout); verify(this.jedisCluster, times(1)).setex("key".getBytes(Protocol.CHARSET), timeout, session); verify(this.jedisCluster, times(1)).sadd(SESSIONS_KEY, "key"); }