[webbeans-commits] Webbeans SVN: r199 - in ri/trunk/webbeans-ri/src: test/java/org/jboss/webbeans/test and 1 other directory.

webbeans-commits at lists.jboss.org webbeans-commits at lists.jboss.org
Tue Oct 28 13:25:28 EDT 2008


Author: pete.muir at jboss.org
Date: 2008-10-28 13:25:28 -0400 (Tue, 28 Oct 2008)
New Revision: 199

Modified:
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ResolutionManager.java
   ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/ApplicationContextTest.java
   ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/ClientProxyTest.java
   ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/InjectionTests.java
   ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/InstantiationByTypeTest.java
   ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/RequestContextTest.java
   ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/ResolutionByTypeTest.java
Log:
Actually allow dyanmic lookups :-)

Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ResolutionManager.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ResolutionManager.java	2008-10-28 15:39:14 UTC (rev 198)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/ResolutionManager.java	2008-10-28 17:25:28 UTC (rev 199)
@@ -48,6 +48,7 @@
    public ResolutionManager(ManagerImpl manager)
    {
       this.injectionPoints = new HashSet<Injectable<?,?>>();
+      this.resolvedInjectionPoints = new InjectableMap();
       this.manager = manager;
    }
    
@@ -63,19 +64,15 @@
    
    public void clear()
    {
-      resolvedInjectionPoints = null;
+      resolvedInjectionPoints = new InjectableMap();
       resolvedNames = new HashMap<String, Set<Bean<?>>>();
    }
    
-   public void resolveBeans()
+   public void resolveInjectionPoints()
    {
-      if (resolvedInjectionPoints == null)
+      for (Injectable<?, ?> injectable : injectionPoints)
       {
-         resolvedInjectionPoints = new InjectableMap();
-         for (Injectable<?, ?> injectable : injectionPoints)
-         {
-            registerInjectionPoint(injectable);
-         }
+         registerInjectionPoint(injectable);
       }
    }
    
@@ -83,13 +80,14 @@
    {
       if (key.getType().equals(Object.class))
       {
+         // TODO Fix this cast
          return (Set<Bean<T>>) (Set) manager.getBeans();
       }
-      else
+      if (!resolvedInjectionPoints.containsKey(key))
       {
-         resolveBeans();
-         return resolvedInjectionPoints.get(key);
+         registerInjectionPoint(key);
       }
+      return resolvedInjectionPoints.get(key);
    }
    
    public Set<Bean<?>> get(String name)

Modified: ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/ApplicationContextTest.java
===================================================================
--- ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/ApplicationContextTest.java	2008-10-28 15:39:14 UTC (rev 198)
+++ ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/ApplicationContextTest.java	2008-10-28 17:25:28 UTC (rev 199)
@@ -2,6 +2,7 @@
 
 import org.testng.annotations.Test;
 
+ at SpecVersion("PDR")
 public class ApplicationContextTest extends AbstractTest
 {
    

Modified: ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/ClientProxyTest.java
===================================================================
--- ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/ClientProxyTest.java	2008-10-28 15:39:14 UTC (rev 198)
+++ ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/ClientProxyTest.java	2008-10-28 17:25:28 UTC (rev 199)
@@ -28,7 +28,7 @@
    }
    
    @Test(groups="clientProxy", expectedExceptions=UnproxyableDependencyException.class) @SpecAssertion(section="4.4.1")
-   public void testInjectionPointWithUnproxyableTypeResolvesToNormalScopedWebBean()
+   public void testInjectionPointWithUnproxyableTypeWhichResolvesToNormalScopedWebBean()
    {
       assert false;
    }

Modified: 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	2008-10-28 15:39:14 UTC (rev 198)
+++ ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/InjectionTests.java	2008-10-28 17:25:28 UTC (rev 199)
@@ -1,6 +1,7 @@
 package org.jboss.webbeans.test;
 
 import javax.webbeans.ContextNotActiveException;
+import javax.webbeans.NonexistentFieldException;
 import javax.webbeans.NullableDependencyException;
 
 import org.testng.annotations.Test;
@@ -45,6 +46,54 @@
       assert false;
    }
    
+   @Test(groups="injection") @SpecAssertion(section="3.6.1")
+   public void testInjectFields()
+   {
+      assert false;
+   }
+   
+   @Test(groups="injection") @SpecAssertion(section="3.6")
+   public void testInjectingStaticField()
+   {
+      assert false;
+   }
+   
+   @Test(groups="injection") @SpecAssertion(section="3.6")
+   public void testInjectingFinalField()
+   {
+      assert false;
+   }
+   
+   @Test(groups={"injection", "webbeansxml"}) @SpecAssertion(section="3.6.2")
+   public void testInjectFieldsDeclaredInXml()
+   {
+      assert false;
+   }
+   
+   @Test(groups={"injection", "webbeansxml"}) @SpecAssertion(section="3.6.2")
+   public void testInjectedFieldDeclaredInXmlIgnoresJavaAnnotations()
+   {
+      assert false;
+   }
+   
+   @Test(groups={"injection", "webbeansxml"}) @SpecAssertion(section="3.6.2")
+   public void testInjectedFieldDeclaredInXmlAssumesCurrent()
+   {
+      assert false;
+   }
+   
+   @Test(groups={"injection", "webbeansxml"}, expectedExceptions=NonexistentFieldException.class) @SpecAssertion(section="3.6.2")
+   public void testNonexistentFieldDefinedInXml()
+   {
+      assert false;
+   }
+   
+   @Test(groups={"injection", "webbeansxml"}) @SpecAssertion(section="3.6.2")
+   public void testInjectFieldsDeclaredInXmlAndJava()
+   {
+      assert false;
+   }
+   
   /*
 
    @Test(groups="injection") @SpecAssertion(section="4.2")
@@ -53,5 +102,6 @@
       assert false;
    }
 
-   */    
+   */
+   
 }

Modified: ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/InstantiationByTypeTest.java
===================================================================
--- ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/InstantiationByTypeTest.java	2008-10-28 15:39:14 UTC (rev 198)
+++ ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/InstantiationByTypeTest.java	2008-10-28 17:25:28 UTC (rev 199)
@@ -62,6 +62,7 @@
       
       ResolutionManager resolutionManager = manager.getResolutionManager();
       resolutionManager.addInjectionPoint(whiteScottishFishField);
+      resolutionManager.resolveInjectionPoints();
       
       manager.getInstanceByType(ScottishFish.class, new AnnotationLiteral<Whitefish>(){});
    }
@@ -79,6 +80,7 @@
       
       ResolutionManager resolutionManager = manager.getResolutionManager();
       resolutionManager.addInjectionPoint(whiteScottishFishField);
+      resolutionManager.resolveInjectionPoints();
       
       manager.getInstanceByType(Tuna.class, new CurrentAnnotationLiteral());
    }
@@ -92,6 +94,7 @@
       
       ResolutionManager resolutionManager = manager.getResolutionManager();
       resolutionManager.addInjectionPoint(plaiceField);
+      resolutionManager.resolveInjectionPoints();
       
       manager.getInstanceByType(Plaice.class, new AnnotationLiteral<Whitefish>(){});
    }

Modified: ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/RequestContextTest.java
===================================================================
--- ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/RequestContextTest.java	2008-10-28 15:39:14 UTC (rev 198)
+++ ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/RequestContextTest.java	2008-10-28 17:25:28 UTC (rev 199)
@@ -2,6 +2,7 @@
 
 import org.testng.annotations.Test;
 
+ at SpecVersion("PDR")
 public class RequestContextTest extends AbstractTest
 {
    
@@ -24,7 +25,7 @@
    }
    
    @Test(groups={"contexts", "ejb3"}) @SpecAssertion(section="8.5.1")
-   public void testScopeActiveDuringEjbTimeoust()
+   public void testScopeActiveDuringEjbTimeoutsInEE6()
    {
       assert false;
    }

Modified: ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/ResolutionByTypeTest.java
===================================================================
--- ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/ResolutionByTypeTest.java	2008-10-28 15:39:14 UTC (rev 198)
+++ ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/ResolutionByTypeTest.java	2008-10-28 17:25:28 UTC (rev 199)
@@ -131,11 +131,6 @@
    @Test(groups="resolution") @SpecAssertion(section={"4.9.2", "4.9.4"})
    public void testResolveByType() throws Exception
    {
-      InjectableField<Animal> realChunkyWhiteFishField = new InjectableField<Animal>(FishFarm.class.getDeclaredField("realChunkyWhiteFish"));
-      InjectableField<Animal> animalField = new InjectableField<Animal>(FishFarm.class.getDeclaredField("animal"));
-      InjectableField<ScottishFish> scottishFishField = new InjectableField<ScottishFish>(FishFarm.class.getDeclaredField("whiteScottishFish"));
-      InjectableField<Tuna> tunaField = new InjectableField<Tuna>(FishFarm.class.getDeclaredField("tuna"));
-      
       Bean<Tuna> tunaBean = new BeanImpl<Tuna>(new SimpleBeanModel<Tuna>(new SimpleAnnotatedType<Tuna>(Tuna.class), getEmptyAnnotatedType(Tuna.class), super.manager), manager);
       Bean<Cod> codBean = new BeanImpl<Cod>(new SimpleBeanModel<Cod>(new SimpleAnnotatedType<Cod>(Cod.class), getEmptyAnnotatedType(Cod.class), super.manager), manager);
       Bean<Salmon> salmonBean = new BeanImpl<Salmon>(new SimpleBeanModel<Salmon>(new SimpleAnnotatedType<Salmon>(Salmon.class), getEmptyAnnotatedType(Salmon.class), super.manager), manager);
@@ -150,12 +145,6 @@
       manager.addBean(haddockBean);
       manager.addBean(seaBassBean);
       
-      ResolutionManager resolutionManager = manager.getResolutionManager();
-      resolutionManager.addInjectionPoint(realChunkyWhiteFishField);
-      resolutionManager.addInjectionPoint(animalField);
-      resolutionManager.addInjectionPoint(scottishFishField);
-      resolutionManager.addInjectionPoint(tunaField);
-      
       assert manager.resolveByType(Tuna.class, new CurrentAnnotationLiteral()).size() == 1;
       assert manager.resolveByType(Tuna.class, new CurrentAnnotationLiteral()).contains(tunaBean);
       
@@ -203,6 +192,7 @@
       
       ResolutionManager resolutionManager = manager.getResolutionManager();
       resolutionManager.addInjectionPoint(scottishFishFarmerField);
+      resolutionManager.resolveInjectionPoints();
       
       assert manager.resolveByType(new TypeLiteral<Farmer<ScottishFish>>(){}).size() == 1;
       assert manager.resolveByType(new TypeLiteral<Farmer<ScottishFish>>(){}).contains(scottishFishFarmerBean);
@@ -230,6 +220,7 @@
       
       ResolutionManager resolutionManager = manager.getResolutionManager();
       resolutionManager.addInjectionPoint(whiteFishField);
+      resolutionManager.resolveInjectionPoints();
 
       assert manager.resolveByType(Animal.class, new AnnotationLiteral<Whitefish>() {}).size() == 1;
       assert manager.resolveByType(Animal.class, new AnnotationLiteral<Whitefish>() {}).contains(plaiceBean);
@@ -249,6 +240,7 @@
       
       ResolutionManager resolutionManager = manager.getResolutionManager();
       resolutionManager.addInjectionPoint(veryExpensiveWhitefishField);
+      resolutionManager.resolveInjectionPoints();
       
       Set<Bean<Animal>> beans = manager.resolveByType(Animal.class, new ExpensiveAnnotationLiteral() 
       {
@@ -282,6 +274,7 @@
       
       ResolutionManager resolutionManager = manager.getResolutionManager();
       resolutionManager.addInjectionPoint(whiteScottishFishField);
+      resolutionManager.resolveInjectionPoints();
       
       assert manager.resolveByType(Tuna.class, new CurrentAnnotationLiteral()).size() == 0;
    }




More information about the weld-commits mailing list