@Test @SpecAssertions({ @SpecAssertion(section = CONTEXTUAL_INSTANCE, id = "a"), @SpecAssertion(section = CONTEXTUAL_INSTANCE, id = "b") }) public void testContextCreatesNewInstanceForInjection() { Context requestContext = getCurrentManager().getContext(RequestScoped.class); Bean<Tuna> tunaBean = getBeans(Tuna.class).iterator().next(); assertNull(requestContext.get(tunaBean)); TunaFarm tunaFarm = getCurrentConfiguration() .getEl() .evaluateValueExpression(getCurrentManager(), "#{tunaFarm}", TunaFarm.class); assertNotNull(tunaFarm.tuna); long timestamp = tunaFarm.tuna.getTimestamp(); // Lookup once again - do not create new instance - contextual instance already exists Tuna tuna = requestContext.get(tunaBean); assertNotNull(tuna); assertEquals(timestamp, tuna.getTimestamp()); }
public void observeInitialized(@Observes AfterBeanDiscovery event) { name = tuna.getName(); }