[webbeans-commits] Webbeans SVN: r1085 - tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment and 1 other directories.

webbeans-commits at lists.jboss.org webbeans-commits at lists.jboss.org
Mon Jan 19 12:00:48 EST 2009


Author: pete.muir at jboss.org
Date: 2009-01-19 12:00:48 -0500 (Mon, 19 Jan 2009)
New Revision: 1085

Added:
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/BorderCollie.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/Dog.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/GoldenLabrador.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/GoldenRetriever.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/Horse.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/InheritedDeploymentType.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/Labrador.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/NotInheritedDeploymentType.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/Retriever.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/ShetlandPony.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/scope/GoldenLabrador.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/scope/Labrador.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/scope/NotInheritedScope.java
Modified:
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/bean/AbstractBean.java
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/bean/AbstractClassBean.java
   ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/bean/AbstractProducerBean.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/AnotherDeploymentType.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/DeploymentTypeTest.java
   tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/scope/ScopeTypeTest.java
Log:
Add tests and support for deployment type inheritance

Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/bean/AbstractBean.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/bean/AbstractBean.java	2009-01-19 16:08:06 UTC (rev 1084)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/bean/AbstractBean.java	2009-01-19 17:00:48 UTC (rev 1085)
@@ -28,7 +28,6 @@
 import javax.webbeans.BindingType;
 import javax.webbeans.DefinitionException;
 import javax.webbeans.Dependent;
-import javax.webbeans.DeploymentType;
 import javax.webbeans.Event;
 import javax.webbeans.InjectionPoint;
 import javax.webbeans.Named;
@@ -180,20 +179,10 @@
    /**
     * Initializes the deployment types
     */
-   protected void initDeploymentType()
+   protected abstract void initDeploymentType();
+   
+   protected void initDeploymentTypeFromStereotype()
    {
-      Set<Annotation> deploymentTypes = getAnnotatedItem().getMetaAnnotations(DeploymentType.class);
-      if (deploymentTypes.size() > 1)
-      {
-         throw new DefinitionException("At most one deployment type may be specified (" + deploymentTypes + " are specified) on " + getAnnotatedItem().toString());
-      }
-      if (deploymentTypes.size() == 1)
-      {
-         this.deploymentType = deploymentTypes.iterator().next().annotationType();
-         log.trace("Deployment type " + deploymentType + " specified by annotation");
-         return;
-      }
-
       AnnotationMap possibleDeploymentTypes = getMergedStereotypes().getPossibleDeploymentTypes();
       if (possibleDeploymentTypes.size() > 0)
       {
@@ -201,10 +190,6 @@
          log.trace("Deployment type " + deploymentType + " specified by stereotype");
          return;
       }
-
-      this.deploymentType = getDefaultDeploymentType();
-      log.trace("Using default @Production deployment type");
-      return;
    }
 
    /**
@@ -288,7 +273,7 @@
     */
    protected abstract void initScopeType();
    
-   protected boolean initScopeFromStereotype()
+   protected boolean initScopeTypeFromStereotype()
    {
       Set<Annotation> possibleScopeTypes = getMergedStereotypes().getPossibleScopeTypes();
       if (possibleScopeTypes.size() == 1)

Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/bean/AbstractClassBean.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/bean/AbstractClassBean.java	2009-01-19 16:08:06 UTC (rev 1084)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/bean/AbstractClassBean.java	2009-01-19 17:00:48 UTC (rev 1085)
@@ -24,6 +24,7 @@
 import javax.webbeans.BindingType;
 import javax.webbeans.DefinitionException;
 import javax.webbeans.Dependent;
+import javax.webbeans.DeploymentType;
 import javax.webbeans.Destructor;
 import javax.webbeans.Disposes;
 import javax.webbeans.Initializer;
@@ -156,33 +157,29 @@
    @Override
    protected void initScopeType()
    {
-      Set<Annotation> scopeAnnotations = getAnnotatedItem().getMetaAnnotations(ScopeType.class);
-      if (scopeAnnotations.size() == 1)
+      for (AnnotatedClass<?> clazz = getAnnotatedItem(); clazz != null; clazz = clazz.getSuperclass())
       {
-         this.scopeType = scopeAnnotations.iterator().next().annotationType();
-         log.trace("Scope " + scopeType + " specified by annotation");
-         return;
-      }
-      else if (scopeAnnotations.size() > 1)
-      {
-         for (AnnotatedClass<?> clazz = getAnnotatedItem(); clazz != null; clazz = clazz.getSuperclass())
+         Set<Annotation> scopeTypes = clazz.getDeclaredMetaAnnotations(ScopeType.class);
+         scopeTypes = clazz.getDeclaredMetaAnnotations(ScopeType.class);
+         if (scopeTypes.size() == 1)
          {
-            scopeAnnotations = clazz.getDeclaredMetaAnnotations(ScopeType.class);
-            if (scopeAnnotations.size() == 1)
+            if (getAnnotatedItem().isAnnotationPresent(scopeTypes.iterator().next().annotationType()))
             {
-               this.scopeType = scopeAnnotations.iterator().next().annotationType();
+               this.scopeType = scopeTypes.iterator().next().annotationType();
                log.trace("Scope " + scopeType + " specified by annotation");
-               return;
             }
-            else if (scopeAnnotations.size() > 1)
-            {
-               throw new DefinitionException("At most one scope may be specified");
-            }
+            break;
          }
-         
+         else if (scopeTypes.size() > 1)
+         {
+            throw new DefinitionException("At most one scope may be specified");
+         }
       }
       
-      initScopeFromStereotype();
+      if (this.scopeType == null)
+      {
+         initScopeTypeFromStereotype();
+      }
       
       if (this.scopeType == null)
       {
@@ -190,7 +187,41 @@
          log.trace("Using default @Dependent scope");
       }
    }
+   
+   @Override
+   protected void initDeploymentType()
+   {
+      for (AnnotatedClass<?> clazz = getAnnotatedItem(); clazz != null; clazz = clazz.getSuperclass())
+      {
+         Set<Annotation> deploymentTypes = clazz.getDeclaredMetaAnnotations(DeploymentType.class);
+         if (deploymentTypes.size() == 1)
+         {
+            if (getAnnotatedItem().isAnnotationPresent(deploymentTypes.iterator().next().annotationType()))
+            {
+               this.deploymentType = deploymentTypes.iterator().next().annotationType();
+               log.trace("Deployment type " + deploymentType + " specified by annotation");
+            }
+            break;
+         }
+         else if (deploymentTypes.size() > 1)
+         {
+            throw new DefinitionException("At most one scope may be specified");
+         }
+      }
 
+      if (this.deploymentType == null)
+      {
+         initDeploymentTypeFromStereotype();
+      }
+
+      if (this.deploymentType == null)
+      {
+         this.deploymentType = getDefaultDeploymentType();
+         log.trace("Using default @Production deployment type");
+         return;
+      }
+   }
+
    /**
     * Validate that the scope type is allowed by the stereotypes on the bean and
     * the bean type

Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/bean/AbstractProducerBean.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/bean/AbstractProducerBean.java	2009-01-19 16:08:06 UTC (rev 1084)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/bean/AbstractProducerBean.java	2009-01-19 17:00:48 UTC (rev 1085)
@@ -25,6 +25,7 @@
 
 import javax.webbeans.DefinitionException;
 import javax.webbeans.Dependent;
+import javax.webbeans.DeploymentType;
 import javax.webbeans.IllegalProductException;
 import javax.webbeans.Initializer;
 import javax.webbeans.Produces;
@@ -222,7 +223,7 @@
          return;
       }
       
-      initScopeFromStereotype();
+      initScopeTypeFromStereotype();
       
       if (this.scopeType == null)
       {
@@ -230,7 +231,32 @@
          log.trace("Using default @Dependent scope");
       }
    }
+   
+   @Override
+   protected void initDeploymentType()
+   {
+      Set<Annotation> deploymentTypes = getAnnotatedItem().getMetaAnnotations(DeploymentType.class);
+      if (deploymentTypes.size() > 1)
+      {
+         throw new DefinitionException("At most one deployment type may be specified (" + deploymentTypes + " are specified) on " + getAnnotatedItem().toString());
+      }
+      else if (deploymentTypes.size() == 1)
+      {
+         this.deploymentType = deploymentTypes.iterator().next().annotationType();
+         log.trace("Deployment type " + deploymentType + " specified by annotation");
+         return;
+      }
 
+      initDeploymentTypeFromStereotype();
+
+      if (this.deploymentType == null)
+      {
+         this.deploymentType = getDefaultDeploymentType();
+         log.trace("Using default @Production deployment type");
+         return;
+      }
+   }
+
    /**
     * Gets the receiver of the product
     * 

Modified: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/AnotherDeploymentType.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/AnotherDeploymentType.java	2009-01-19 16:08:06 UTC (rev 1084)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/AnotherDeploymentType.java	2009-01-19 17:00:48 UTC (rev 1085)
@@ -5,6 +5,7 @@
 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;
 
@@ -14,6 +15,7 @@
 @Retention(RUNTIME)
 @Documented
 @DeploymentType
+ at Inherited
 @interface AnotherDeploymentType
 {
 

Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/BorderCollie.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/BorderCollie.java	                        (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/BorderCollie.java	2009-01-19 17:00:48 UTC (rev 1085)
@@ -0,0 +1,6 @@
+package org.jboss.webbeans.tck.tests.definition.deployment;
+
+class BorderCollie extends Dog
+{
+   
+}


Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/BorderCollie.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Modified: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/DeploymentTypeTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/DeploymentTypeTest.java	2009-01-19 16:08:06 UTC (rev 1084)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/DeploymentTypeTest.java	2009-01-19 17:00:48 UTC (rev 1085)
@@ -27,7 +27,9 @@
    protected List<Class<? extends Annotation>> getEnabledDeploymentTypes()
    {
       List<Class<? extends Annotation>> deploymentTypes = super.getStandardDeploymentTypes();
+      deploymentTypes.add(AnotherDeploymentType.class);
       deploymentTypes.add(HornedAnimalDeploymentType.class);
+      deploymentTypes.add(NotInheritedDeploymentType.class);
       return deploymentTypes;
    }
    
@@ -157,4 +159,29 @@
       Bean<Reindeer> bean = createSimpleBean(Reindeer.class);
       assert bean.getDeploymentType().equals(Production.class);
    }
-}
\ No newline at end of file
+   
+   @Test @SpecAssertion(section="4.1")
+   public void testDeploymentTypeDeclaredInheritedIsInherited() throws Exception
+   {
+      assert createSimpleBean(BorderCollie.class).getDeploymentType().equals(AnotherDeploymentType.class);
+   }
+   
+   @Test @SpecAssertion(section="4.1")
+   public void testDeploymentTypeNotDeclaredInheritedIsNotInherited()
+   {
+      assert createSimpleBean(ShetlandPony.class).getDeploymentType().equals(Production.class);
+   }
+   
+   @Test @SpecAssertion(section="4.1")
+   public void testDeploymentTypeDeclaredInheritedIsBlockedByIntermediateDeploymentTypeNotMarkedInherited()
+   {
+      assert createSimpleBean(GoldenRetriever.class).getDeploymentType().equals(Production.class);
+   }
+   
+   @Test @SpecAssertion(section="4.1")
+   public void testDeploymentTypeDeclaredInheritedIsBlockedByIntermediateDeploymentTypeMarkedInherited()
+   {
+      assert createSimpleBean(GoldenLabrador.class).getDeploymentType().equals(InheritedDeploymentType.class);
+   }
+   
+}

Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/Dog.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/Dog.java	                        (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/Dog.java	2009-01-19 17:00:48 UTC (rev 1085)
@@ -0,0 +1,8 @@
+package org.jboss.webbeans.tck.tests.definition.deployment;
+
+
+ at AnotherDeploymentType
+class Dog
+{
+   
+}


Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/Dog.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/GoldenLabrador.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/GoldenLabrador.java	                        (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/GoldenLabrador.java	2009-01-19 17:00:48 UTC (rev 1085)
@@ -0,0 +1,6 @@
+package org.jboss.webbeans.tck.tests.definition.deployment;
+
+class GoldenLabrador extends Labrador
+{
+   
+}


Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/GoldenLabrador.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/GoldenRetriever.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/GoldenRetriever.java	                        (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/GoldenRetriever.java	2009-01-19 17:00:48 UTC (rev 1085)
@@ -0,0 +1,6 @@
+package org.jboss.webbeans.tck.tests.definition.deployment;
+
+class GoldenRetriever extends Retriever
+{
+   
+}


Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/GoldenRetriever.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/Horse.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/Horse.java	                        (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/Horse.java	2009-01-19 17:00:48 UTC (rev 1085)
@@ -0,0 +1,8 @@
+package org.jboss.webbeans.tck.tests.definition.deployment;
+
+
+ at NotInheritedDeploymentType
+class Horse
+{
+   
+}


Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/Horse.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/InheritedDeploymentType.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/InheritedDeploymentType.java	                        (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/InheritedDeploymentType.java	2009-01-19 17:00:48 UTC (rev 1085)
@@ -0,0 +1,22 @@
+package org.jboss.webbeans.tck.tests.definition.deployment;
+
+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.Inherited;
+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 Inherited
+ at interface InheritedDeploymentType
+{
+
+}
\ No newline at end of file


Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/InheritedDeploymentType.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/Labrador.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/Labrador.java	                        (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/Labrador.java	2009-01-19 17:00:48 UTC (rev 1085)
@@ -0,0 +1,8 @@
+package org.jboss.webbeans.tck.tests.definition.deployment;
+
+
+ at InheritedDeploymentType
+class Labrador extends Dog
+{
+   
+}


Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/Labrador.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/NotInheritedDeploymentType.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/NotInheritedDeploymentType.java	                        (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/NotInheritedDeploymentType.java	2009-01-19 17:00:48 UTC (rev 1085)
@@ -0,0 +1,20 @@
+package org.jboss.webbeans.tck.tests.definition.deployment;
+
+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 NotInheritedDeploymentType
+{
+
+}
\ No newline at end of file


Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/NotInheritedDeploymentType.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/Retriever.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/Retriever.java	                        (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/Retriever.java	2009-01-19 17:00:48 UTC (rev 1085)
@@ -0,0 +1,7 @@
+package org.jboss.webbeans.tck.tests.definition.deployment;
+
+ at NotInheritedDeploymentType
+class Retriever extends Dog
+{
+   
+}


Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/Retriever.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/ShetlandPony.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/ShetlandPony.java	                        (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/ShetlandPony.java	2009-01-19 17:00:48 UTC (rev 1085)
@@ -0,0 +1,6 @@
+package org.jboss.webbeans.tck.tests.definition.deployment;
+
+class ShetlandPony extends Horse
+{
+   
+}


Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/deployment/ShetlandPony.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/scope/GoldenLabrador.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/scope/GoldenLabrador.java	                        (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/scope/GoldenLabrador.java	2009-01-19 17:00:48 UTC (rev 1085)
@@ -0,0 +1,6 @@
+package org.jboss.webbeans.tck.tests.definition.scope;
+
+class GoldenLabrador extends Labrador
+{
+   
+}


Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/scope/GoldenLabrador.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/scope/Labrador.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/scope/Labrador.java	                        (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/scope/Labrador.java	2009-01-19 17:00:48 UTC (rev 1085)
@@ -0,0 +1,8 @@
+package org.jboss.webbeans.tck.tests.definition.scope;
+
+
+ at NotInheritedScope
+class Labrador extends Dog
+{
+   
+}


Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/scope/Labrador.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Added: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/scope/NotInheritedScope.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/scope/NotInheritedScope.java	                        (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/scope/NotInheritedScope.java	2009-01-19 17:00:48 UTC (rev 1085)
@@ -0,0 +1,21 @@
+package org.jboss.webbeans.tck.tests.definition.scope;
+
+import static java.lang.annotation.ElementType.FIELD;
+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.ScopeType;
+
+ at Target( { TYPE, METHOD, FIELD })
+ at Retention(RUNTIME)
+ at Documented
+ at ScopeType
+ at interface NotInheritedScope
+{
+   
+}


Property changes on: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/scope/NotInheritedScope.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain

Modified: tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/scope/ScopeTypeTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/scope/ScopeTypeTest.java	2009-01-19 16:08:06 UTC (rev 1084)
+++ tck/trunk/impl/src/main/java/org/jboss/webbeans/tck/tests/definition/scope/ScopeTypeTest.java	2009-01-19 17:00:48 UTC (rev 1085)
@@ -151,9 +151,15 @@
    }
    
    @Test @SpecAssertion(section="4.1")
-   public void testScopeTypeDeclaredInheritedIsBlockedByIntermediateClass()
+   public void testScopeTypeDeclaredInheritedIsBlockedByIntermediateScopeTypeMarkedInherited()
    {
       assert createSimpleBean(GoldenRetriever.class).getScopeType().equals(ApplicationScoped.class);
    }
    
+   @Test @SpecAssertion(section="4.1")
+   public void testScopeTypeDeclaredInheritedIsBlockedByIntermediateScopeTypeNotMarkedInherited()
+   {
+      assert createSimpleBean(GoldenLabrador.class).getScopeType().equals(Dependent.class);
+   }
+   
 }
\ No newline at end of file




More information about the weld-commits mailing list