Injector injector = lifecycleInjectorBuilder.createInjector();
Assert.assertEquals(AnnotatedLazySingletonObject.constructorCount.get(), 0);
Assert.assertEquals(AnnotatedLazySingletonObject.postConstructCount.get(), 0);
AnnotatedLazySingletonObject instance = injector.getInstance(AnnotatedLazySingletonObject.class);
Assert.assertEquals(AnnotatedLazySingletonObject.constructorCount.get(), 1);
Assert.assertEquals(AnnotatedLazySingletonObject.postConstructCount.get(), 1);
AnnotatedLazySingletonObject instance2 = injector.getInstance(AnnotatedLazySingletonObject.class);
Assert.assertEquals(AnnotatedLazySingletonObject.constructorCount.get(), 1);
Assert.assertEquals(AnnotatedLazySingletonObject.postConstructCount.get(), 1);
Assert.assertSame(instance, instance2);
}