/**
* @throws Exception If failed.
*/
public void testMaxAttempts() throws Exception {
GridAlwaysFailoverSpi spi = getSpi();
spi.setMaximumFailoverAttempts(1);
List<GridNode> nodes = new ArrayList<>();
nodes.add(new GridTestNode(UUID.randomUUID()));
nodes.add(new GridTestNode(UUID.randomUUID()));
GridComputeJobResult jobRes = new GridTestJobResult(nodes.get(0));
// First attempt.
GridNode node = spi.failover(new GridFailoverTestContext(new GridTestTaskSession(), jobRes), nodes);
assert node != null;
assert node.equals(nodes.get(1));
checkFailedNodes(jobRes, 1);
// Second attempt (exceeds default max attempts of 1).
node = spi.failover(new GridFailoverTestContext(new GridTestTaskSession(), jobRes), nodes);
assert node == null;
checkFailedNodes(jobRes, 1);
}