@Test
public void testImmediateStarts()
        throws Exception
{

    Injector injector = Guice.createInjector(
            Stage.PRODUCTION,
            new LifeCycleModule(),
            binder -> {
                initializeConfig(binder);
                binder.bind(InstanceThatRequiresStart.class).in(Scopes.SINGLETON);
                binder.bind(InstanceThatUsesInstanceThatRequiresStart.class).in(Scopes.SINGLETON);
            }
    );
    LifeCycleManager lifeCycleManager = injector.getInstance(LifeCycleManager.class);
    lifeCycleManager.start();
    assertEquals(stateLog, ImmutableList.of("InstanceThatUsesInstanceThatRequiresStart:OK"));
}