[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