[webbeans-commits] Webbeans SVN: r1020 - ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test and 3 other directories.
webbeans-commits at lists.jboss.org
webbeans-commits at lists.jboss.org
Fri Jan 16 11:41:52 EST 2009
Author: pete.muir at jboss.org
Date: 2009-01-16 11:41:52 -0500 (Fri, 16 Jan 2009)
New Revision: 1020
Added:
ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/unit/DeferredEventNotificationTest.java
tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/
tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/AnotherDeploymentType.java
tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/BeanWithFinalBoundField_Broken.java
tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/BeanWithStaticBoundField_Broken.java
tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/FarmHouseProducer_Broken.java
tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/FarmHouse_Broken.java
tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/Fox.java
tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/FoxRun.java
tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/InjectionTest.java
tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/SpiderNest.java
tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/SpiderProducer.java
tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/Tuna.java
tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/TunaFarm.java
Removed:
ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/DeferredEventNotificationTest.java
ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/InjectionTests.java
Modified:
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/util/BeanValidation.java
Log:
port injection tests (one broken, david is working on a fix)
Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/util/BeanValidation.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/util/BeanValidation.java 2009-01-16 15:04:20 UTC (rev 1019)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/util/BeanValidation.java 2009-01-16 16:41:52 UTC (rev 1020)
@@ -45,6 +45,8 @@
*
* @param beans The beans to validate
*/
+ // TODO THIS SHOULD NOT BE A STATIC UTITLITY CLASS
+ @Deprecated
public static void validate(List<Bean<?>> beans)
{
for (Bean<?> bean : beans)
Deleted: ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/DeferredEventNotificationTest.java
===================================================================
--- ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/DeferredEventNotificationTest.java 2009-01-16 15:04:20 UTC (rev 1019)
+++ ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/DeferredEventNotificationTest.java 2009-01-16 16:41:52 UTC (rev 1020)
@@ -1,81 +0,0 @@
-package org.jboss.webbeans.test;
-
-import java.util.Arrays;
-
-import javax.webbeans.Observes;
-import javax.webbeans.Standard;
-
-import org.jboss.webbeans.bean.SimpleBean;
-import org.jboss.webbeans.introspector.AnnotatedMethod;
-import org.jboss.webbeans.introspector.jlr.AnnotatedClassImpl;
-import org.jboss.webbeans.introspector.jlr.AnnotatedMethodImpl;
-import org.jboss.webbeans.test.annotations.AnotherDeploymentType;
-import org.jboss.webbeans.test.annotations.Asynchronous;
-import org.jboss.webbeans.test.beans.Tuna;
-import org.testng.annotations.Test;
-
-/**
- * Unit tests for the deferred event notification object used to delay
- * notification till the end of a transaction.
- *
- * @author David Allen
- *
- */
-public class DeferredEventNotificationTest extends AbstractTest
-{
-
- public class Event
- {
- // Simple class used for testing
- }
-
- @Override
- protected void addStandardDeploymentTypesForTests()
- {
- manager.setEnabledDeploymentTypes(Arrays.asList(Standard.class, AnotherDeploymentType.class));
- }
-
- public class AnObserver
- {
- protected boolean notified = false;
-
- public void observe(@Observes @Asynchronous Event e)
- {
- // An observer method
- this.notified = true;
- }
- }
-
- /**
- * Test method for
- * {@link org.jboss.webbeans.event.DeferredEventNotification#beforeCompletion()}
- * .
- */
- @Test(groups={"deferredEvent", "broken"})
- public final void testBeforeCompletion() throws Exception
- {
- // When the transaction is committed, the beforeCompletion() method is
- // invoked which in turn invokes the observer. Here the mock observer
- // is used to keep track of the event being fired.
- SimpleBean<Tuna> tuna;
- AnnotatedMethod<Object> om;
-
-
- // Create an observer with known binding types
- //Map<Class<? extends Annotation>, Annotation> annotations = new HashMap<Class<? extends Annotation>, Annotation>();
- //annotations.put(Asynchronous.class, new AsynchronousAnnotationLiteral());
- //AnnotatedClass<Tuna> annotatedItem = new SimpleAnnotatedClass<Tuna>(Tuna.class, annotations);
- // TODO This should test a real class
- tuna = SimpleBean.of(Tuna.class, manager);
- om = new AnnotatedMethodImpl<Object>(AnObserver.class.getMethod("observe", new Class[] { Event.class }), new AnnotatedClassImpl<AnObserver>(AnObserver.class));
-
- AnObserver observerInstance = new AnObserver();
- // TODO Fix this Observer<Event> observer = new MockObserverImpl<Event>(tuna, om, Event.class);
- //((MockObserverImpl<Event>) observer).setInstance(observerInstance);
- Event event = new Event();
- //DeferredEventNotification<Event> deferredNotification = new DeferredEventNotification<Event>(event, observer);
- //deferredNotification.beforeCompletion();
- assert observerInstance.notified;
- }
-
-}
Deleted: ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/InjectionTests.java
===================================================================
--- ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/InjectionTests.java 2009-01-16 15:04:20 UTC (rev 1019)
+++ ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/InjectionTests.java 2009-01-16 16:41:52 UTC (rev 1020)
@@ -1,139 +0,0 @@
-package org.jboss.webbeans.test;
-
-import javax.webbeans.ContextNotActiveException;
-import javax.webbeans.DefinitionException;
-import javax.webbeans.NonexistentFieldException;
-import javax.webbeans.NullableDependencyException;
-import javax.webbeans.RequestScoped;
-import javax.webbeans.manager.Bean;
-
-import org.jboss.webbeans.bean.AbstractProducerBean;
-import org.jboss.webbeans.bean.ProducerMethodBean;
-import org.jboss.webbeans.bean.SimpleBean;
-import org.jboss.webbeans.context.RequestContext;
-import org.jboss.webbeans.test.beans.Fox;
-import org.jboss.webbeans.test.beans.FoxRun;
-import org.jboss.webbeans.test.beans.SpiderNest;
-import org.jboss.webbeans.test.beans.SpiderProducer;
-import org.jboss.webbeans.test.beans.Tuna;
-import org.jboss.webbeans.test.beans.TunaFarm;
-import org.jboss.webbeans.test.beans.broken.BeanWithFinalBoundField;
-import org.jboss.webbeans.test.beans.broken.BeanWithStaticBoundField;
-import org.jboss.webbeans.test.beans.broken.FarmHouse;
-import org.jboss.webbeans.test.beans.broken.FarmHouseProducer;
-import org.jboss.webbeans.util.BeanValidation;
-import org.testng.annotations.Test;
-
- at SpecVersion("20081206")
-public class InjectionTests extends AbstractTest
-{
-
- @Test(groups = { "injection", "producerMethod" })
- @SpecAssertion(section = "5.2")
- public void testInjectionPerformsBoxingIfNecessary() throws Exception
- {
- SimpleBean<SpiderProducer> spiderProducer = SimpleBean.of(SpiderProducer.class, manager);
- manager.addBean(spiderProducer);
- Bean<SpiderNest> spiderNestBean = SimpleBean.of(SpiderNest.class, manager);
- manager.addBean(ProducerMethodBean.of(SpiderProducer.class.getMethod("getWolfSpiderSize"), spiderProducer, manager));
- SpiderNest spiderNest = spiderNestBean.create();
- assert spiderNest.numberOfSpiders != null;
- assert spiderNest.numberOfSpiders.equals(4);
- }
-
- @Test(groups = { "injection", "producerMethod" }, expectedExceptions = NullableDependencyException.class)
- @SpecAssertion(section = "5.2")
- public void testPrimitiveInjectionPointResolvesToNullableWebBean() throws Exception
- {
- registerProducerBean(FarmHouseProducer.class, "getNumberOfBedrooms", Integer.class);
- manager.addBean(SimpleBean.of(FarmHouse.class, manager));
- BeanValidation.validate(manager.getBeans());
- }
-
- @Test(groups = { "injection", "clientProxy" }, expectedExceptions = ContextNotActiveException.class)
- @SpecAssertion(section = "5.3")
- public void testInvokeNormalInjectedWebBeanWhenContextNotActive()
- {
- SimpleBean<TunaFarm> tunaFarmBean = SimpleBean.of(TunaFarm.class, manager);
- Bean<Tuna> tunaBean = SimpleBean.of(Tuna.class, manager);
- manager.addBean(tunaBean);
- TunaFarm tunaFarm = tunaFarmBean.create();
- assert tunaFarm.tuna != null;
- RequestContext requestContext = (RequestContext) manager.getContext(RequestScoped.class);
- requestContext.setActive(false);
- tunaFarm.tuna.getName();
- }
-
- @Test(groups = "injection")
- @SpecAssertion(section = "5.3")
- public void testInvokeDependentScopeWhenContextNotActive()
- {
- Bean<FoxRun> foxRunBean = SimpleBean.of(FoxRun.class, manager);
- Bean<Fox> foxBean = SimpleBean.of(Fox.class, manager);
- manager.addBean(foxBean);
- FoxRun foxRun = foxRunBean.create();
- assert foxRun.fox.getName().equals("gavin");
- }
-
- @Test(groups = "injection", expectedExceptions = DefinitionException.class)
- @SpecAssertion(section = "3.7")
- public void testInjectingStaticField()
- {
- SimpleBean<BeanWithStaticBoundField> bean = SimpleBean.of(BeanWithStaticBoundField.class, manager);
- Bean<Tuna> tunaBean = SimpleBean.of(Tuna.class, manager);
- manager.addBean(tunaBean);
- BeanWithStaticBoundField instance = bean.create();
- }
-
- @Test(groups = "injection", expectedExceptions = DefinitionException.class)
- @SpecAssertion(section = "3.7")
- public void testInjectingFinalField()
- {
- SimpleBean<BeanWithFinalBoundField> bean = SimpleBean.of(BeanWithFinalBoundField.class, manager);
- Bean<Tuna> tunaBean = SimpleBean.of(Tuna.class, manager);
- manager.addBean(tunaBean);
- BeanWithFinalBoundField instance = bean.create();
- }
-
- @Test(groups = { "stub", "injection", "webbeansxml" })
- @SpecAssertion(section = "3.7.2")
- public void testInjectFieldsDeclaredInXml()
- {
- assert false;
- }
-
- @Test(groups = { "stub", "injection", "webbeansxml" })
- @SpecAssertion(section = "3.7.2")
- public void testInjectedFieldDeclaredInXmlIgnoresJavaAnnotations()
- {
- assert false;
- }
-
- @Test(groups = { "stub", "injection", "webbeansxml" })
- @SpecAssertion(section = "3.7.2")
- public void testInjectedFieldDeclaredInXmlAssumesCurrent()
- {
- assert false;
- }
-
- @Test(groups = { "stub", "injection", "webbeansxml" }, expectedExceptions = NonexistentFieldException.class)
- @SpecAssertion(section = "3.7.2")
- public void testNonexistentFieldDefinedInXml()
- {
- assert false;
- }
-
- @Test(groups = { "stub", "injection", "webbeansxml" })
- @SpecAssertion(section = "3.7.2")
- public void testInjectFieldsDeclaredInXmlAndJava()
- {
- assert false;
- }
-
- /*
- *
- * @Test(groups="injection") @SpecAssertion(section="4.2") public void test {
- * assert false; }
- */
-
-}
Copied: ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/unit/DeferredEventNotificationTest.java (from rev 1017, ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/DeferredEventNotificationTest.java)
===================================================================
--- ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/unit/DeferredEventNotificationTest.java (rev 0)
+++ ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/unit/DeferredEventNotificationTest.java 2009-01-16 16:41:52 UTC (rev 1020)
@@ -0,0 +1,82 @@
+package org.jboss.webbeans.test.unit;
+
+import java.util.Arrays;
+
+import javax.webbeans.Observes;
+import javax.webbeans.Standard;
+
+import org.jboss.webbeans.bean.SimpleBean;
+import org.jboss.webbeans.introspector.AnnotatedMethod;
+import org.jboss.webbeans.introspector.jlr.AnnotatedClassImpl;
+import org.jboss.webbeans.introspector.jlr.AnnotatedMethodImpl;
+import org.jboss.webbeans.test.AbstractTest;
+import org.jboss.webbeans.test.annotations.AnotherDeploymentType;
+import org.jboss.webbeans.test.annotations.Asynchronous;
+import org.jboss.webbeans.test.beans.Tuna;
+import org.testng.annotations.Test;
+
+/**
+ * Unit tests for the deferred event notification object used to delay
+ * notification till the end of a transaction.
+ *
+ * @author David Allen
+ *
+ */
+public class DeferredEventNotificationTest extends AbstractTest
+{
+
+ public class Event
+ {
+ // Simple class used for testing
+ }
+
+ @Override
+ protected void addStandardDeploymentTypesForTests()
+ {
+ manager.setEnabledDeploymentTypes(Arrays.asList(Standard.class, AnotherDeploymentType.class));
+ }
+
+ public class AnObserver
+ {
+ protected boolean notified = false;
+
+ public void observe(@Observes @Asynchronous Event e)
+ {
+ // An observer method
+ this.notified = true;
+ }
+ }
+
+ /**
+ * Test method for
+ * {@link org.jboss.webbeans.event.DeferredEventNotification#beforeCompletion()}
+ * .
+ */
+ @Test(groups={"deferredEvent", "broken"})
+ public final void testBeforeCompletion() throws Exception
+ {
+ // When the transaction is committed, the beforeCompletion() method is
+ // invoked which in turn invokes the observer. Here the mock observer
+ // is used to keep track of the event being fired.
+ SimpleBean<Tuna> tuna;
+ AnnotatedMethod<Object> om;
+
+
+ // Create an observer with known binding types
+ //Map<Class<? extends Annotation>, Annotation> annotations = new HashMap<Class<? extends Annotation>, Annotation>();
+ //annotations.put(Asynchronous.class, new AsynchronousAnnotationLiteral());
+ //AnnotatedClass<Tuna> annotatedItem = new SimpleAnnotatedClass<Tuna>(Tuna.class, annotations);
+ // TODO This should test a real class
+ tuna = SimpleBean.of(Tuna.class, manager);
+ om = new AnnotatedMethodImpl<Object>(AnObserver.class.getMethod("observe", new Class[] { Event.class }), new AnnotatedClassImpl<AnObserver>(AnObserver.class));
+
+ AnObserver observerInstance = new AnObserver();
+ // TODO Fix this Observer<Event> observer = new MockObserverImpl<Event>(tuna, om, Event.class);
+ //((MockObserverImpl<Event>) observer).setInstance(observerInstance);
+ Event event = new Event();
+ //DeferredEventNotification<Event> deferredNotification = new DeferredEventNotification<Event>(event, observer);
+ //deferredNotification.beforeCompletion();
+ assert observerInstance.notified;
+ }
+
+}
Property changes on: ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/unit/DeferredEventNotificationTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/AnotherDeploymentType.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/AnotherDeploymentType.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/AnotherDeploymentType.java 2009-01-16 16:41:52 UTC (rev 1020)
@@ -0,0 +1,20 @@
+package org.jboss.webbeans.tck.tests.lookup.injection;
+
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+import javax.webbeans.DeploymentType;
+
+ at Target( { TYPE, METHOD })
+ at Retention(RUNTIME)
+ at Documented
+ at DeploymentType
+ at interface AnotherDeploymentType
+{
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/AnotherDeploymentType.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/BeanWithFinalBoundField_Broken.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/BeanWithFinalBoundField_Broken.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/BeanWithFinalBoundField_Broken.java 2009-01-16 16:41:52 UTC (rev 1020)
@@ -0,0 +1,11 @@
+package org.jboss.webbeans.tck.tests.lookup.injection;
+
+import javax.webbeans.Current;
+
+class BeanWithFinalBoundField_Broken
+{
+
+ @Current
+ public final Tuna tuna = null;
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/BeanWithFinalBoundField_Broken.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/BeanWithStaticBoundField_Broken.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/BeanWithStaticBoundField_Broken.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/BeanWithStaticBoundField_Broken.java 2009-01-16 16:41:52 UTC (rev 1020)
@@ -0,0 +1,11 @@
+package org.jboss.webbeans.tck.tests.lookup.injection;
+
+import javax.webbeans.Current;
+
+class BeanWithStaticBoundField_Broken
+{
+
+ @Current
+ public static Tuna tuna;
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/BeanWithStaticBoundField_Broken.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/FarmHouseProducer_Broken.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/FarmHouseProducer_Broken.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/FarmHouseProducer_Broken.java 2009-01-16 16:41:52 UTC (rev 1020)
@@ -0,0 +1,13 @@
+package org.jboss.webbeans.tck.tests.lookup.injection;
+
+import javax.webbeans.Produces;
+
+class FarmHouseProducer_Broken
+{
+
+ @Produces public Integer getNumberOfBedrooms()
+ {
+ return null;
+ }
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/FarmHouseProducer_Broken.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/FarmHouse_Broken.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/FarmHouse_Broken.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/FarmHouse_Broken.java 2009-01-16 16:41:52 UTC (rev 1020)
@@ -0,0 +1,11 @@
+package org.jboss.webbeans.tck.tests.lookup.injection;
+
+import javax.webbeans.Current;
+
+class FarmHouse_Broken
+{
+
+ @Current
+ public int noOfBedrooms;
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/FarmHouse_Broken.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/Fox.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/Fox.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/Fox.java 2009-01-16 16:41:52 UTC (rev 1020)
@@ -0,0 +1,14 @@
+package org.jboss.webbeans.tck.tests.lookup.injection;
+
+import javax.webbeans.Dependent;
+
+ at Dependent
+class Fox
+{
+
+ public String getName()
+ {
+ return "gavin";
+ }
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/Fox.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/FoxRun.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/FoxRun.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/FoxRun.java 2009-01-16 16:41:52 UTC (rev 1020)
@@ -0,0 +1,14 @@
+package org.jboss.webbeans.tck.tests.lookup.injection;
+
+import javax.webbeans.Current;
+
+class FoxRun
+{
+
+ @Current
+ public Fox fox;
+
+ @Current
+ public Fox anotherFox;
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/FoxRun.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/InjectionTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/InjectionTest.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/InjectionTest.java 2009-01-16 16:41:52 UTC (rev 1020)
@@ -0,0 +1,136 @@
+package org.jboss.webbeans.tck.tests.lookup.injection;
+
+import static org.jboss.webbeans.tck.impl.WebBeansTCKImpl.configuration;
+
+import java.lang.annotation.Annotation;
+import java.util.List;
+
+import javax.webbeans.ContextNotActiveException;
+import javax.webbeans.DefinitionException;
+import javax.webbeans.NonexistentFieldException;
+import javax.webbeans.NullableDependencyException;
+import javax.webbeans.manager.Bean;
+
+import org.jboss.webbeans.tck.impl.SpecAssertion;
+import org.jboss.webbeans.tck.impl.SpecVersion;
+import org.jboss.webbeans.tck.tests.AbstractTest;
+import org.testng.annotations.Test;
+
+ at SpecVersion("20081206")
+public class InjectionTest extends AbstractTest
+{
+
+ @Override
+ protected List<Class<? extends Annotation>> getEnabledDeploymentTypes()
+ {
+ List<Class<? extends Annotation>> deploymentTypes = super.getEnabledDeploymentTypes();
+ deploymentTypes.add(AnotherDeploymentType.class);
+ return deploymentTypes;
+ }
+
+ @Test(groups = { "injection", "producerMethod" })
+ @SpecAssertion(section = "5.2")
+ public void testInjectionPerformsBoxingIfNecessary() throws Exception
+ {
+ Bean<SpiderProducer> spiderProducer = getSimpleBean(SpiderProducer.class);
+ manager.addBean(spiderProducer);
+ Bean<SpiderNest> spiderNestBean = getSimpleBean(SpiderNest.class);
+ manager.addBean(getProducerMethodBean(SpiderProducer.class.getMethod("getWolfSpiderSize"), spiderProducer));
+ SpiderNest spiderNest = spiderNestBean.create();
+ assert spiderNest.numberOfSpiders != null;
+ assert spiderNest.numberOfSpiders.equals(4);
+ }
+
+ @Test(groups = { "injection", "producerMethod" }, expectedExceptions = NullableDependencyException.class)
+ @SpecAssertion(section = "5.2")
+ public void testPrimitiveInjectionPointResolvesToNullableWebBean() throws Exception
+ {
+ deployBeans(FarmHouseProducer_Broken.class, FarmHouse_Broken.class);
+ }
+
+ @Test(groups = { "injection", "clientProxy" }, expectedExceptions = ContextNotActiveException.class)
+ @SpecAssertion(section = "5.3")
+ public void testInvokeNormalInjectedWebBeanWhenContextNotActive()
+ {
+ Bean<TunaFarm> tunaFarmBean = getSimpleBean(TunaFarm.class);
+ Bean<Tuna> tunaBean = getSimpleBean(Tuna.class);
+ manager.addBean(tunaBean);
+ TunaFarm tunaFarm = tunaFarmBean.create();
+ assert tunaFarm.tuna != null;
+ configuration().getContexts().setActive(configuration().getContexts().getRequestContext());
+ tunaFarm.tuna.getName();
+ }
+
+ @Test(groups = "injection")
+ @SpecAssertion(section = "5.3")
+ public void testInvokeDependentScopeWhenContextNotActive()
+ {
+ Bean<FoxRun> foxRunBean = getSimpleBean(FoxRun.class);
+ Bean<Fox> foxBean = getSimpleBean(Fox.class);
+ manager.addBean(foxBean);
+ FoxRun foxRun = foxRunBean.create();
+ assert foxRun.fox.getName().equals("gavin");
+ }
+
+ @Test(groups = "injection", expectedExceptions = DefinitionException.class)
+ @SpecAssertion(section = "3.7")
+ public void testInjectingStaticField()
+ {
+ Bean<BeanWithStaticBoundField_Broken> bean = getSimpleBean(BeanWithStaticBoundField_Broken.class);
+ Bean<Tuna> tunaBean = getSimpleBean(Tuna.class);
+ manager.addBean(tunaBean);
+ bean.create();
+ }
+
+ @Test(groups = "injection", expectedExceptions = DefinitionException.class)
+ @SpecAssertion(section = "3.7")
+ public void testInjectingFinalField()
+ {
+ Bean<BeanWithFinalBoundField_Broken> bean = getSimpleBean(BeanWithFinalBoundField_Broken.class);
+ Bean<Tuna> tunaBean = getSimpleBean(Tuna.class);
+ manager.addBean(tunaBean);
+ bean.create();
+ }
+
+ @Test(groups = { "stub", "injection", "webbeansxml" })
+ @SpecAssertion(section = "3.7.2")
+ public void testInjectFieldsDeclaredInXml()
+ {
+ assert false;
+ }
+
+ @Test(groups = { "stub", "injection", "webbeansxml" })
+ @SpecAssertion(section = "3.7.2")
+ public void testInjectedFieldDeclaredInXmlIgnoresJavaAnnotations()
+ {
+ assert false;
+ }
+
+ @Test(groups = { "stub", "injection", "webbeansxml" })
+ @SpecAssertion(section = "3.7.2")
+ public void testInjectedFieldDeclaredInXmlAssumesCurrent()
+ {
+ assert false;
+ }
+
+ @Test(groups = { "stub", "injection", "webbeansxml" }, expectedExceptions = NonexistentFieldException.class)
+ @SpecAssertion(section = "3.7.2")
+ public void testNonexistentFieldDefinedInXml()
+ {
+ assert false;
+ }
+
+ @Test(groups = { "stub", "injection", "webbeansxml" })
+ @SpecAssertion(section = "3.7.2")
+ public void testInjectFieldsDeclaredInXmlAndJava()
+ {
+ assert false;
+ }
+
+ /*
+ *
+ * @Test(groups="injection") @SpecAssertion(section="4.2") public void test {
+ * assert false; }
+ */
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/InjectionTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/SpiderNest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/SpiderNest.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/SpiderNest.java 2009-01-16 16:41:52 UTC (rev 1020)
@@ -0,0 +1,16 @@
+package org.jboss.webbeans.tck.tests.lookup.injection;
+
+import javax.webbeans.Initializer;
+
+class SpiderNest
+{
+
+ public Integer numberOfSpiders;
+
+ @Initializer
+ public SpiderNest(Integer numberOfSpiders)
+ {
+ this.numberOfSpiders = numberOfSpiders;
+ }
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/SpiderNest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/SpiderProducer.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/SpiderProducer.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/SpiderProducer.java 2009-01-16 16:41:52 UTC (rev 1020)
@@ -0,0 +1,14 @@
+package org.jboss.webbeans.tck.tests.lookup.injection;
+
+import javax.webbeans.Produces;
+
+ at AnotherDeploymentType
+class SpiderProducer
+{
+
+ @Produces public int getWolfSpiderSize()
+ {
+ return 4;
+ }
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/SpiderProducer.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/Tuna.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/Tuna.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/Tuna.java 2009-01-16 16:41:52 UTC (rev 1020)
@@ -0,0 +1,15 @@
+package org.jboss.webbeans.tck.tests.lookup.injection;
+
+import javax.webbeans.RequestScoped;
+
+ at AnotherDeploymentType
+ at RequestScoped
+class Tuna
+{
+
+ public String getName()
+ {
+ return "Ophir";
+ }
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/Tuna.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/TunaFarm.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/TunaFarm.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/TunaFarm.java 2009-01-16 16:41:52 UTC (rev 1020)
@@ -0,0 +1,17 @@
+package org.jboss.webbeans.tck.tests.lookup.injection;
+
+import javax.webbeans.Current;
+import javax.webbeans.Production;
+
+ at Production
+class TunaFarm
+{
+
+ @SuppressWarnings("unused")
+ @Current
+ public Tuna tuna;
+
+ public Tuna notInjectedTuna = new Tuna();
+
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/injection/TunaFarm.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
More information about the weld-commits
mailing list