X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=support%2Fcdi%2Fsrc%2Ftest%2Fjava%2Forg%2Fwamblee%2Fcdi%2FSimpleInjectorTest.java;h=f9e77a5deb116489c513ef017afb162b09267db7;hb=8dd32e931b348cf53d3e8567c7a092735ea46253;hp=61a124a0a577a073a52accf5bb3158e89b9dc0ab;hpb=efe818bf40c144c19d25c4df283996667de84cf4;p=utils diff --git a/support/cdi/src/test/java/org/wamblee/cdi/SimpleInjectorTest.java b/support/cdi/src/test/java/org/wamblee/cdi/SimpleInjectorTest.java index 61a124a0..f9e77a5d 100644 --- a/support/cdi/src/test/java/org/wamblee/cdi/SimpleInjectorTest.java +++ b/support/cdi/src/test/java/org/wamblee/cdi/SimpleInjectorTest.java @@ -18,37 +18,45 @@ package org.wamblee.cdi; import static junit.framework.Assert.*; import static org.mockito.Mockito.*; +import javax.enterprise.context.RequestScoped; +import javax.inject.Inject; import javax.naming.InitialContext; import org.junit.After; import org.junit.Before; import org.junit.Test; -import org.wamblee.support.jndi.StubInitialContextFactory; +import org.wamblee.inject.Injector; +import org.wamblee.inject.InjectorFactory; +import org.wamblee.inject.InjectorFactoryBuilder; +import org.wamblee.inject.SimpleInjector; +import org.wamblee.test.jndi.StubInitialContextFactory; -public class SimpleInjectorTest { +public class SimpleInjectorTest extends BaseTestFixture { private BeanManagerSetup setup; @Before public void setUp() throws Exception { + super.setUp(); setup = new BeanManagerSetup(); setup.initialize(); StubInitialContextFactory.register(); InitialContext ctx = new InitialContext(); ctx.bind(BeanManagerLookup.BEAN_MANAGER_JNDI, setup.getBeanManager()); - MySingleton.reset(); + MySingleton.reset(); } @After - public void tearDown() { + public void tearDown() throws Exception { StubInitialContextFactory.unregister(); setup.shutdown(); + super.tearDown(); } @Test public void testGetSingleton() { MyPojo pojo = new MyPojo(); - SimpleInjector injector = new SimpleInjector(); + SimpleInjector injector = new SimpleInjector(new CdiInjectorFactory(BeanManagerLookup.lookup())); injector.inject(pojo); MySingleton obj = pojo.getSingleton(); @@ -82,4 +90,29 @@ public class SimpleInjectorTest { // verify the custom injector was called. assertSame(singleton, pojo.getSingleton()); } + + @RequestScoped + public static class Y { + + } + public static class X { + @Inject + private Y y; + + } + + @Test + public void testInjectStorage() throws Exception { + X x = new X(); + InjectorFactoryBuilder.setInjectorFactory(null); + InjectorFactoryBuilder.getInjector().inject(x); + } + + @Test + public void testInjectStorage2() { + X x = new X(); + InjectorFactoryBuilder.setInjectorFactory(null); + InjectorFactoryBuilder.getInjector().inject(x); + } + }