@Test
public void testFailSlowCallRevertSuppressed() throws Throwable {

  assertFailed(builder()
          .suppressExceptions()
          .revertWith(reverter)
          .onFailure(failures),
      failingTask);
  failingTask.assertInvokedAtLeast("success", FAILPOINT);
  // all committed were reverted
  // identify which task failed from the set
  int failing = failures.getItem().id;
  items.stream()
      .filter(i -> i.id != failing)
      .filter(i -> i.committed)
      .forEach(Item::assertReverted);
  // all reverted items are committed
  items.stream().filter(i -> i.reverted)
      .forEach(Item::assertCommitted);
  // only one failure was triggered
  failures.assertInvoked("failure event", 1);
}