@Test
public void testReplaceAtHeadSuccessFull() throws Exception {
ClusterTierClientEntity clientEntity = createClientEntity("testReplaceAtHeadSuccessFull");
CommonServerStoreProxy serverStoreProxy = new CommonServerStoreProxy("testReplaceAtHeadSuccessFull", clientEntity, mock(ServerCallback.class));
serverStoreProxy.append(20L, createPayload(200L));
serverStoreProxy.append(20L, createPayload(2000L));
serverStoreProxy.append(20L, createPayload(20000L));
Chain expect = serverStoreProxy.get(20L);
Chain update = getChain(false, createPayload(400L));
serverStoreProxy.replaceAtHead(20l, expect, update);
Chain afterReplace = serverStoreProxy.get(20L);
assertChainHas(afterReplace, 400L);
serverStoreProxy.append(20L, createPayload(4000L));
serverStoreProxy.append(20L, createPayload(40000L));
serverStoreProxy.replaceAtHead(20L, afterReplace, getChain(false, createPayload(800L)));
Chain anotherReplace = serverStoreProxy.get(20L);
assertChainHas(anotherReplace, 800L, 4000L, 40000L);
}