void runTestBasicRetry(CLUSTER cluster) throws Exception {
RaftTestUtil.waitForLeader(cluster);
final RaftPeerId leaderId = cluster.getLeaderAndSendFirstMessage(false).getId();
long oldLastApplied = cluster.getLeader().getState().getLastAppliedIndex();
final RaftClient client = cluster.createClient(leaderId);
final RaftClientRpc rpc = client.getClientRpc();
final long callId = 999;
final long seqNum = 111;
RaftClientRequest r = cluster.newRaftClientRequest(client.getId(), leaderId,
callId, seqNum, new SimpleMessage("message"));
assertReply(rpc.sendRequest(r), client, callId);
for (int i = 0; i < 5; i++) {
assertReply(rpc.sendRequest(r), client, callId);
}
assertServer(cluster, client.getId(), callId, oldLastApplied);
client.close();
}