[webbeans-commits] Webbeans SVN: r1076 - tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/byname.

webbeans-commits at lists.jboss.org webbeans-commits at lists.jboss.org
Mon Jan 19 05:15:03 EST 2009


Author: shane.bryzak at jboss.com
Date: 2009-01-19 05:15:03 -0500 (Mon, 19 Jan 2009)
New Revision: 1076

Modified:
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/byname/ResolutionByNameTest.java
Log:
split out test

Modified: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/byname/ResolutionByNameTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/byname/ResolutionByNameTest.java	2009-01-19 09:59:38 UTC (rev 1075)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/lookup/byname/ResolutionByNameTest.java	2009-01-19 10:15:03 UTC (rev 1076)
@@ -4,6 +4,7 @@
 import java.util.List;
 
 import javax.webbeans.AmbiguousDependencyException;
+import javax.webbeans.UnsatisfiedDependencyException;
 import javax.webbeans.manager.Bean;
 
 import org.jboss.webbeans.tck.impl.SpecAssertion;
@@ -28,8 +29,6 @@
     * 
     *  • Identify the Web Bean by calling Manager.resolveByName(), passing the name.
     *  • If resolveByName() returned an empty set, return a null value.
-    *  • Otherwise, if resolveByName() returned more than one Web Bean, throw an 
-    *    AmbiguousDependencyException.
     *  • Otherwise, if exactly one Web Bean was returned, obtain an instance of the 
     *    Web Bean by calling Manager.getInstance(), passing the Bean instance representing 
     *    the Web Bean
@@ -39,23 +38,9 @@
    {           
       assert manager.getInstanceByName("nonexistant") == null;
                 
-      activateDependentContext();
       try
       {
-         try
-         {
-            // Both Cod and Plaice are named "whitefish"
-            Bean<Cod> codBean = createSimpleBean(Cod.class);
-            Bean<Plaice> plaiceBean = createSimpleBean(Plaice.class);
-            manager.addBean(codBean);
-            manager.addBean(plaiceBean);            
-            
-            // Should throw AmbiguousDependencyException because two beans have the same name
-            manager.getInstanceByName("whitefish");
-            assert false;
-         }
-         catch (AmbiguousDependencyException ex) { }
-         
+         activateDependentContext();
          Bean<Salmon> salmonBean = createSimpleBean(Salmon.class);      
          manager.addBean(salmonBean);      
          assert manager.getInstanceByName("salmon") instanceof Salmon;
@@ -65,6 +50,30 @@
          deactivateDependentContext();
       }
    }
+
+   /**
+    *  • Otherwise, if resolveByName() returned more than one Web Bean, throw an 
+    *    AmbiguousDependencyException.
+    */
+   @Test(expectedExceptions=AmbiguousDependencyException.class) @SpecAssertion(section="5.11")
+   public void testDuplicateNamedBeans()
+   {
+      try
+      {
+         activateDependentContext();
+         
+         Bean<Cod> codBean = createSimpleBean(Cod.class);
+         Bean<Plaice> plaiceBean = createSimpleBean(Plaice.class);
+         manager.addBean(codBean);
+         manager.addBean(plaiceBean);
+         
+         manager.getInstanceByName("whitefish");
+      }
+      finally
+      {
+         deactivateDependentContext();
+      }
+   }
    
    @Test(groups={"stub", "el"})  @SpecAssertion(section="5.11.2")
    public void testELResolverRegisteredWithJsf()




More information about the weld-commits mailing list