@Test
void abort() {

    assertThatThrownBy(() -> tenant.inTransaction(t -> {
        final String key = "a";
        final InstanceState<TransactionalPowerTenantImplTest> s = t
            .getState(TransactionalPowerTenantImplTest.class);
        t.fire(mock(RoboZonkyDaemonSuspendedEvent.class));
        s.update(m -> m.put(key, UUID.randomUUID()
            .toString()));
        throw new IllegalStateException("Should abort transaction.");
    })).isInstanceOf(IllegalStateException.class);
    // nothing is performed
    assertThat(tenant.getState(TransactionalPowerTenantImplTest.class)
        .getKeys()).isEmpty();
    assertThat(getEventsRequested()).isEmpty();
}