@Test
public void shouldPermitUsingCustomInit() throws Exception {

  Init<String, Boolean> init =
      new Init<String, Boolean>() {
        @Nonnull
        @Override
        public First<String, Boolean> init(String model) {
          return First.first(model, effects(true));
        }
      };
  loop = Mobius.loop(UPDATE, HANDLER).init(init).startFrom(MY_MODEL);
  loop.dispatchEvent(3);
  await().atMost(Duration.ofSeconds(1)).until(() -> "start33".equals(loop.getMostRecentModel()));
}