@Test
 public void notifiesOnSuccessfulClose() {
   try (Transaction t = new DummyTransaction()) {
     t.toState(FINISHED);
     t.onSuccess(() -> updates.add(FINISHED));
   }
   assertEquals("missing success notification", 1, updates.size());
 }