[webbeans-commits] Webbeans SVN: r2278 - tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution.

webbeans-commits at lists.jboss.org webbeans-commits at lists.jboss.org
Mon Mar 30 23:54:17 EDT 2009


Author: shane.bryzak at jboss.com
Date: 2009-03-30 23:54:17 -0400 (Mon, 30 Mar 2009)
New Revision: 2278

Added:
   tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/BakedBean_Broken.java
   tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/BrokenInjectedBean.java
   tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/Other.java
   tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/OtherBinding.java
Modified:
   tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/CurrentBinding.java
   tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/DependencyResolutionTest.java
Log:
5.7.1 tests

Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/BakedBean_Broken.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/BakedBean_Broken.java	                        (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/BakedBean_Broken.java	2009-03-31 03:54:17 UTC (rev 2278)
@@ -0,0 +1,12 @@
+package org.jboss.jsr299.tck.tests.lookup.dependency.resolution;
+
+public class BakedBean_Broken
+{
+   /*
+    * private constructor makes this bean unproxyable
+    */
+   private BakedBean_Broken()
+   {
+      
+   }
+}

Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/BrokenInjectedBean.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/BrokenInjectedBean.java	                        (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/BrokenInjectedBean.java	2009-03-31 03:54:17 UTC (rev 2278)
@@ -0,0 +1,8 @@
+package org.jboss.jsr299.tck.tests.lookup.dependency.resolution;
+
+import javax.inject.Current;
+
+class BrokenInjectedBean
+{   
+   @Current public BakedBean_Broken bakedBean;
+}

Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/CurrentBinding.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/CurrentBinding.java	2009-03-31 02:43:36 UTC (rev 2277)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/CurrentBinding.java	2009-03-31 03:54:17 UTC (rev 2278)
@@ -3,7 +3,7 @@
 import javax.inject.AnnotationLiteral;
 import javax.inject.Current;
 
-public class CurrentBinding extends AnnotationLiteral<Current> implements Current
+class CurrentBinding extends AnnotationLiteral<Current> implements Current
 {
 
 }

Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/DependencyResolutionTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/DependencyResolutionTest.java	2009-03-31 02:43:36 UTC (rev 2277)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/DependencyResolutionTest.java	2009-03-31 03:54:17 UTC (rev 2278)
@@ -7,10 +7,13 @@
 import java.util.HashSet;
 import java.util.Set;
 
+import javax.inject.UnproxyableDependencyException;
+import javax.inject.UnsatisfiedDependencyException;
 import javax.inject.manager.Bean;
 import javax.inject.manager.InjectionPoint;
 
 import org.hibernate.tck.annotations.SpecAssertion;
+import org.hibernate.tck.annotations.SpecAssertions;
 import org.jboss.jsr299.tck.AbstractJSR299Test;
 import org.jboss.testharness.impl.packaging.Artifact;
 import org.testng.annotations.Test;
@@ -71,7 +74,10 @@
    }
    
    @Test
-   @SpecAssertion(section = "5.7.1", id = "c")
+   @SpecAssertions({
+      @SpecAssertion(section = "5.7.1", id = "c"),
+      @SpecAssertion(section = "5.7.1", id = "d")
+   })
    public void testGetInstanceToInjectReturnsContextualInstance() throws Exception
    {
       Bean<Vanilla> vanillaBean = getCurrentManager().resolveByType(Vanilla.class).iterator().next();
@@ -83,4 +89,44 @@
       
       assert getCurrentManager().getInstanceToInject(injectionPoint) instanceof Vanilla;
    }
+   
+   @Test(expectedExceptions = UnsatisfiedDependencyException.class)
+   @SpecAssertion(section = "5.7.1", id = "e")
+   public void testGetInstanceToInjectThrowsUnsatisfiedDependencyException() throws Exception
+   {
+      Bean<Vanilla> vanillaBean = getCurrentManager().resolveByType(Vanilla.class).iterator().next();
+      
+      Field injectedField = InjectedBean.class.getField("vanilla");
+      Set<Annotation> bindings = new HashSet<Annotation>();
+      bindings.add(new OtherBinding());
+      MockInjectionPoint injectionPoint = new MockInjectionPoint(vanillaBean, Vanilla.class, injectedField, bindings);
+      
+      assert getCurrentManager().getInstanceToInject(injectionPoint) instanceof Vanilla;      
+   }
+   
+   @Test(expectedExceptions = UnsatisfiedDependencyException.class)
+   @SpecAssertion(section = "5.7.1", id = "f")
+   public void testGetInstanceToInjectThrowsAmbiguousDependencyException() throws Exception
+   {
+      Bean<Vanilla> vanillaBean = getCurrentManager().resolveByType(Vanilla.class).iterator().next();
+      
+      Field injectedField = InjectedBean.class.getField("vanilla");
+      Set<Annotation> bindings = new HashSet<Annotation>();
+      bindings.add(new OtherBinding());
+      MockInjectionPoint injectionPoint = new MockInjectionPoint(vanillaBean, Vanilla.class, injectedField, bindings);      
+      getCurrentManager().getInstanceToInject(injectionPoint);      
+   }   
+   
+   @Test(expectedExceptions = UnproxyableDependencyException.class, groups = "ri-broken")
+   @SpecAssertion(section = "5.7.1", id = "g")
+   public void testGetInstanceToInjectThrowsUnproxyableDependencyException() throws Exception
+   {
+      Bean<BakedBean_Broken> bakedBean = getCurrentManager().resolveByType(BakedBean_Broken.class).iterator().next();
+      
+      Field injectedField = BrokenInjectedBean.class.getField("bakedBean");
+      Set<Annotation> bindings = new HashSet<Annotation>();
+      bindings.add(new CurrentBinding());
+      MockInjectionPoint injectionPoint = new MockInjectionPoint(bakedBean, BakedBean_Broken.class, injectedField, bindings);
+      getCurrentManager().getInstanceToInject(injectionPoint);     
+   }
 }

Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/Other.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/Other.java	                        (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/Other.java	2009-03-31 03:54:17 UTC (rev 2278)
@@ -0,0 +1,23 @@
+package org.jboss.jsr299.tck.tests.lookup.dependency.resolution;
+
+import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.Inherited;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+import javax.inject.BindingType;
+
+ at Target( { TYPE, METHOD, PARAMETER, FIELD })
+ at Retention(RUNTIME)
+ at Documented
+ at BindingType
+public @interface Other
+{
+
+}

Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/OtherBinding.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/OtherBinding.java	                        (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/dependency/resolution/OtherBinding.java	2009-03-31 03:54:17 UTC (rev 2278)
@@ -0,0 +1,8 @@
+package org.jboss.jsr299.tck.tests.lookup.dependency.resolution;
+
+import javax.inject.AnnotationLiteral;
+
+class OtherBinding extends AnnotationLiteral<Other> implements Other
+{
+
+}




More information about the weld-commits mailing list