X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=support%2Fcdi%2Fsrc%2Ftest%2Fjava%2Forg%2Fwamblee%2Fcdi%2FSimpleInjectorTest.java;h=7c61b2ffa6d70500325d658fdc69cd122e69a8ba;hb=9b768a517d7fffa74b978431ee7a5947ec078798;hp=61cdfb86cd08048615ece0a36dfda670e4e9fca8;hpb=1baf903d22ec384ea7d730889c2b0fd5f087a0e5;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 61cdfb86..7c61b2ff 100644 --- a/support/cdi/src/test/java/org/wamblee/cdi/SimpleInjectorTest.java +++ b/support/cdi/src/test/java/org/wamblee/cdi/SimpleInjectorTest.java @@ -18,6 +18,8 @@ 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; @@ -25,8 +27,10 @@ import org.junit.Before; import org.junit.Test; import org.wamblee.inject.Injector; import org.wamblee.inject.InjectorFactory; +import org.wamblee.inject.InjectorBuilder; import org.wamblee.inject.SimpleInjector; -import org.wamblee.support.jndi.StubInitialContextFactory; +import org.wamblee.test.cdi.BeanManagerSetup; +import org.wamblee.test.jndi.StubInitialContextFactory; public class SimpleInjectorTest extends BaseTestFixture { @@ -40,7 +44,7 @@ public class SimpleInjectorTest extends BaseTestFixture { StubInitialContextFactory.register(); InitialContext ctx = new InitialContext(); ctx.bind(BeanManagerLookup.BEAN_MANAGER_JNDI, setup.getBeanManager()); - MySingleton.reset(); + MySingleton.reset(); } @After @@ -53,7 +57,8 @@ public class SimpleInjectorTest extends BaseTestFixture { @Test public void testGetSingleton() { MyPojo pojo = new MyPojo(); - SimpleInjector injector = new SimpleInjector(new CdiInjectorFactory(BeanManagerLookup.lookup())); + SimpleInjector injector = new SimpleInjector(new CdiInjectorFactory( + BeanManagerLookup.lookup())); injector.inject(pojo); MySingleton obj = pojo.getSingleton(); @@ -79,12 +84,38 @@ public class SimpleInjectorTest extends BaseTestFixture { @Override public void inject(Object aComponent) { MyPojo pojo2 = (MyPojo) aComponent; - pojo2.setSingleton(singleton); + pojo2.setSingleton(singleton); } }); - + injector.inject(pojo); - // verify the custom injector was called. + // 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(); + InjectorBuilder.setInjectorFactory(null); + InjectorBuilder.getInjector().inject(x); + } + + @Test + public void testInjectStorage2() { + X x = new X(); + InjectorBuilder.setInjectorFactory(null); + InjectorBuilder.getInjector().inject(x); + } + }