[webbeans-commits] Webbeans SVN: r1956 - tck/trunk/impl/src/main/resources.

webbeans-commits at lists.jboss.org webbeans-commits at lists.jboss.org
Fri Mar 13 02:39:07 EDT 2009


Author: shane.bryzak at jboss.com
Date: 2009-03-13 02:39:07 -0400 (Fri, 13 Mar 2009)
New Revision: 1956

Modified:
   tck/trunk/impl/src/main/resources/tck-audit.xml
Log:
completed section 9 assertions

Modified: tck/trunk/impl/src/main/resources/tck-audit.xml
===================================================================
--- tck/trunk/impl/src/main/resources/tck-audit.xml	2009-03-13 06:17:22 UTC (rev 1955)
+++ tck/trunk/impl/src/main/resources/tck-audit.xml	2009-03-13 06:39:07 UTC (rev 1956)
@@ -5681,7 +5681,433 @@
   </section>
   
   <section id="9.6.2" title="Child elements of a producer method declaration">
+    <assertion id="a">
+      <text>If a child element of a producer method declaration is the &lt;Produces&gt; element in the Java EE namespace, it declares the return type, bindings and member-level metadata of the producer method</text>
+    </assertion>
+    
+    <assertion id="b">
+      <text>If the child element of a producer method declaration can be interpreted as an interceptor binding type, it declares a method-level interceptor binding</text>
+    </assertion>
+    
+    <assertion id="c">
+      <text>The container interprets the child element of a producer method declaration as declaring a parameter of the producer method, if it is not a &lt;Produces&gt; element and cannot be interpreted as an interceptor binding type</text>
+    </assertion>
+    
+    <assertion id="d">
+      <text>If there is more than one child &lt;Produces&gt; element of a producer method declaration in the Java EE namespace, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="e">
+      <text>The container inspects the direct child elements of the &lt;Produces&gt; element. For each child element, the element is interpreted as a Java type. If no such Java type exists in the classpath, a DefinitionException is thrown by the container at deployment time</text>
+    </assertion>
+    
+    <assertion id="f">
+      <text>If the type of the direct child element of a &lt;Produces&gt; element is a Java class or interface type, the return type of the producer method was declared</text>
+    </assertion>
+    
+    <assertion id="g">
+      <text>If the type of the direct child element of a &lt;Produces&gt; element is a Java annotation type, it declares member-level metadata of the producer method</text>
+    </assertion>
+    
+    <assertion id="h">
+      <text>If the type of the direct child element of a &lt;Produces&gt; element is not a Java class or Java annotation, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="i">
+      <text>If more than one child element represents a Java class or interface type, or if no child element represents a Java class or interface type, a DefinitionException is thrown by the container at deployment time</text>
+    </assertion>
+  </section>
   
+  <section id="9.6.3" title="Return type and bindings of a producer method or field">
+    <assertion id="a">
+      <text>Every XML producer method or field declaration has a direct child &lt;Produces&gt; element</text>
+    </assertion>
+    
+    <assertion id="b">
+      <text>This &lt;Produces&gt; element must, in turn, have a direct child element which declares the return type of the producer method or the type of the producer field and which is interpreted by the container as a type declaration, as defined in Section 9.10, "Specifying bean types and bindings"</text>
+    </assertion>
+    
+    <assertion id="c">
+      <text>The type declaration that declares the return type of the producer method or the type of the producer field specifies the return type and bindings of the producer method bean, or the type and bindings of the producer field bean.</text>
+    </assertion>
+    
+    <assertion id="d">
+      <text>The type is used to calculate the set of bean types</text>
+    </assertion>
+    
+    <assertion id="e">
+      <text>The type declared in XML must be a supertype or subtype of the Java method or field type. If the declared type is not a supertype or subtype of the Java method or field type, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
   </section>
+  
+  <section id="9.6.4" title="Member-level metadata for a producer method or field">
+    <assertion id="a">
+      <text>Member-level metadata for a producer method or field declaration is specified via direct child elements of the &lt;Produces&gt; element that represent Java annotation types.</text>
+    </assertion>
+    
+    <assertion id="b">
+      <text>Each child element is interpreted as a Java annotation type. If the type is not a Java annotation type, a DefinitionException is thrown by the container at deployment time</text>
+    </assertion>
+    
+    <assertion id="c">
+      <text>If the annotation type is a deployment type, the deployment type of the producer method or field was declared, as defined in Section 2.5.4, "Declaring the deployment type of a bean using XML".</text>
+    </assertion>
+    
+    <assertion id="d">
+      <text>If the annotation type is a scope type, the scope of the producer method or field was declared, as defined in Section 2.4.4, "Declaring the bean scope using XML".</text>
+    </assertion>
+    
+    <assertion id="e">
+      <text>If the annotation type is a stereotype, a stereotype of the producer method or field was declared, as defined in Section 2.7.3, "Declaring the stereotypes for a bean using XML".</text>
+    </assertion>
+    
+    <assertion id="f">
+      <text>If the annotation type is javax.annotation.Name, the name of the producer method or field was declared, as defined in Section 2.6.2, "Declaring the bean name using XML".</text>
+    </assertion>
+    
+    <assertion id="g">
+      <text>If the annotation type is not a deployment type, or a scope type, or a stereotype, or a javax.annotation.Name, a DefinitionException is thrown by the container at deployment time</text>
+    </assertion>
+  </section>
+  
+  <section id="9.7" title="Interceptor and decorator declarations">
+    <assertion id="a">
+      <text>A simple bean declaration is interpreted as an interceptor declaration if it contains a direct child &lt;Interceptor&gt; element in the Java EE namespace</text>
+    </assertion>
+    
+    <assertion id="b">
+      <text>A simple bean declaration is interpreted as a decorator declaration if it contains a direct child &lt;Decorator&gt; element in the Java EE namespace</text>
+    </assertion>
+    
+    <assertion id="c">
+      <text>If a bean declaration that is not a simple bean declaration contains a child &lt;Interceptor&gt; element, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="d">
+      <text>If a bean declaration that is not a simple bean declaration contains a child &lt;Decorator&gt; element, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="e">
+      <text>If an inline bean declaration contains a child &lt;Interceptor&gt; element, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="f">
+      <text>If an inline bean declaration contains a child &lt;Decorator&gt; element, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="g">
+      <text>If a simple bean declaration contains more than one direct child &lt;Interceptor&gt; element in the Java EE namespace, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="h">
+      <text>If a simple bean declaration contains more than one direct child &lt;Decorator&gt; element in the Java EE namespace, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+  </section>
+  
+  <section id="9.7.1" title="Decorator delegate attribute">
+    <assertion id="a">
+      <text>Decorator declarations may declare the delegate attribute</text>
+    </assertion>
+    
+    <assertion id="b">
+      <text>A delegate declaration is a direct child element of the decorator declaration.</text>
+    </assertion>
+    
+    <assertion id="c">
+      <text>The name of the delegate attribute is the same as the name of the element.</text>
+    </assertion>
+    
+    <assertion id="d">
+      <text>If a direct child element of a decorator declaration exists in the same namespace as its parent, and has direct child &lt;Decorates&gt; element in the Java EE namespace then it is interpreted as a delegate declaration.</text>
+    </assertion>
+    
+    <assertion id="e">
+      <text>If the bean class has a field with the same name as the child element, then the child element is interpreted to represent that field.</text>
+    </assertion>
+    
+    <assertion id="f">
+      <text>If the bean class does not have have a field with the specified name, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="g">
+      <text>If a delegate declaration has more than one direct child element, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="h">
+      <text>The child element of the delegate declaration is a &lt;Decorates&gt; element in the Java EE namespace. If the &lt;Decorates&gt; element does not, in turn, have exactly one direct child element, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="i">
+      <text>The direct child element of the &lt;Decorates&gt; element is interpreted as a type declaration as specified by Section 9.10, "Specifying bean types and bindings". If the declared bean type is not assignable to the type of the Java field, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="j">
+      <text>The bean type declared in XML may be a subtype of the Java field type. In this case, the container will use the bean type declared in XML when resolving the dependency.</text>
+    </assertion>
+    
+    <assertion id="k">
+      <text>If simple bean declaration that is not a decorator declaration contains a direct child element that in turn contains a direct child &lt;Decorates&gt; element, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+  </section>
+  
+  <section id="9.8" title="Injection point declarations">
+    <assertion id="a">
+      <text>An injection point declaration is either a type declaration, as defined in Section 9.10, "Specifying bean types and bindings", or an inline bean declaration, as defined in Section 9.9, "Inline bean declarations".</text>
+    </assertion>
+    
+    <assertion id="b">
+      <text>When the container encounters an injection point declaration, it interprets the element as a Java class or interface. If no such Java type exists in the classpath, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="c">
+      <text>If the Java type is a parameterized type, the injection point declaration is a type declaration, and the declared type of the injection point is the bean type of the type declaration, including actual type parameters.</text>
+    </assertion>
+    
+    <assertion id="d">
+      <text>Otherwise, the container inspects the direct child elements. If any direct child element can be interpreted as a binding type, the injection point declaration is a type declaration, and the declared type of the injection point is the bean type of the type declaration.</text>
+    </assertion>
+    
+    <assertion id="e">
+      <text>Otherwise, if any direct child elements exist, the injection point declaration is an inline bean declaration, and the declared type of the injection point is the bean class of the bean.</text>
+    </assertion>
+    
+    <assertion id="f">
+      <text>Otherwise, the injection point declaration is a type declaration, and the declared type of the injection point is the bean type of the type declaration.</text>
+    </assertion>
+  </section>
+  
+  <section id="9.9" title="Inline bean declarations">
+    <assertion id="a">
+      <text>An inline bean declaration is a simple bean declaration, as defined in Section 9.5, "Bean declarations" that occurs as an injection point declaration, instead of as a direct child of the &lt;Beans&gt; element.</text>
+    </assertion>
+    
+    <assertion id="b">
+      <text>The element is interpreted as a Java class. This Java class is the bean class of the simple bean</text>
+    </assertion>
+    
+    <assertion id="c">
+      <text>Inline bean declarations may not explicitly specify a binding type. If an inline bean declaration explicitly specifies a binding type, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="d">
+      <text>For every inline injection point, the container generates a unique value for an implementation-specific binding type.  This generated value is the binding of the injection point, and the only binding of the simple bean. The bean type of the injection point is the declared bean class of the simple bean.</text>
+    </assertion>
+    
+    <assertion id="e">
+      <text>An inline bean declaration results in a simple bean that is bound only to the injection point at which it was declared.</text>
+    </assertion>
+  </section>
+  
+  <section id="9.10" title="Specifying bean types and bindings">
+    <assertion id="a">
+      <text>Every injection point defined in XML must explicitly specify a bean type and combination of bindings.</text>
+    </assertion>
+    
+    <assertion id="b">
+      <text>Every event parameter defined in XML must explicitly specify a bean type and combination of bindings.</text>
+    </assertion>
+    
+    <assertion id="c">
+      <text>Every delegate attribute defined in XML must explicitly specify a bean type and combination of bindings.</text>
+    </assertion>
+    
+    <assertion id="d">
+      <text>XML-based producer method declarations must explicitly specify the return type (which is used to calculate the set of bean types) and bindings</text>
+    </assertion>
+    
+    <assertion id="e">
+      <text>A type declaration is an element that represents a Java class or interface, or &lt;Array&gt;</text>
+    </assertion>
+    
+    <assertion id="f">
+      <text>A type declaration is (if the type is a parameterized type), a set of child elements that represent Java classes and/or interfaces, and are interpreted as the actual type parameters, or, if the type is an array type, a single child element that represents the array element type</text>
+    </assertion>
+    
+    <assertion id="g">
+      <text>A type declaration is optionally, a set of child elements that represent Java annotation types, and are interpreted as bindings</text>
+    </assertion>
+    
+    <assertion id="h">
+      <text>When the container encounters a type declaration it interprets the element as a Java type</text>
+    </assertion>
+    
+    <assertion id="i">
+      <text>If the element is an &lt;Array&gt; element in the Java EE namespace, an array type was declared.</text>
+    </assertion>
+    
+    <assertion id="j">
+      <text>Otherwise, the element is interpreted as a Java class or interface. If no such Java type exists in the classpath, a DefinitionException is thrown by the container at deployment time. If the Java type is not a class or interface type, a DefinitionException is thrown by the container at deployment time</text>
+    </assertion>
+    
+    <assertion id="k">
+      <text>The container inspects every direct child element of the type declaration. Each child element is interpreted as a Java type. If no such Java type exists in the classpath, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="l">
+      <text>If the type is a Java annotation type, a binding was declared.</text>
+    </assertion>
+    
+    <assertion id="m">
+      <text>If the type is a Java class or interface type, an actual type parameter or array element type was declared</text>
+    </assertion>
+    
+    <assertion id="n">
+      <text>If the type is not a Java annotation type or a Java class or interface type, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="o">
+      <text>If multiple array element types are declared, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="p">
+      <text>If the number of declared actual type parameters is not the same as the number of parameters of the Java type, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="q">
+      <text>If a type parameter of the Java type is bounded, and the corresponding declared actual type parameter does not satisfy the upper or lower bound, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="r">
+      <text>If a binding declaration declares a Java annotation type that is not a binding type, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="s">
+      <text>If no binding is declared, the default binding @Current is assumed</text>
+    </assertion>
+    
+    <assertion id="t">
+      <text>If the same binding type occurs more than once, a DuplicateBindingTypeException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="u">
+      <text>For fields, type declarations are specified as direct child elements of the field declaration</text>
+    </assertion>
+    
+    <assertion id="v">
+      <text>For methods, the method parameter declarations are type declarations</text>
+    </assertion>
+    
+    <assertion id="w">
+      <text>For producer methods, the return type must be specified</text>
+    </assertion>
+    
+    <assertion id="x">
+      <text>For constructors, the constructor parameter declarations are type declarations</text>
+    </assertion>
+  </section>
+  
+  <section id="9.11" title="Annotation members">
+    <assertion id="a">
+      <text>Any binding or interceptor binding declaration must define the value of any annotation member without a default value, and may additionally define the value of any annotation member with a default value.</text>
+    </assertion>
+    
+    <assertion id="b">
+      <text>Annotation member values are defined by attributes of the XML element which represents the Java annotation.</text>
+    </assertion>
+    
+    <assertion id="c">
+      <text>All attributes of any XML element which represents a Java annotation are interpreted as members of the annotation</text>
+    </assertion>
+    
+    <assertion id="d">
+      <text>The name of the attribute is interpreted as the name of the corresponding annotation member.</text>
+    </assertion>
+    
+    <assertion id="e">
+      <text>The value of the attribute is interpreted as the value of the annotation member.</text>
+    </assertion>
+    
+    <assertion id="f">
+      <text>If there is no annotation member with the same name as the attribute, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="g">
+      <text>The value of an annotation member named value may be specified in the body of the XML element which represents the Java annotation.</text>
+    </assertion>
+    
+    <assertion id="h">
+      <text>If the XML element has a non-empty body and also specifies an attribute named value, a
+DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="i">
+      <text>If the XML element has a non-empty body, and there is no annotation member named value, a DefinitionException is thrown by the container at deployment time</text>
+    </assertion>
+    
+    <assertion id="j">
+      <text>The value of a member of primitive type is specified using the Java literal syntax for that type</text>
+    </assertion>
+    
+    <assertion id="k">
+      <text>The value of a member of type java.lang.String is specified using the string value</text>
+    </assertion>
+    
+    <assertion id="l">
+      <text>The value of a member of enumerated type is specified using the unqualified name of the enumeration value.</text>
+    </assertion>
+    
+    <assertion id="m">
+      <text>The value of a member of type java.lang.Class is specified using the fully qualified Java class name.</text>
+    </assertion>
+    
+    <assertion id="n">
+      <text>If the member value is not specified in the correct format for the type of the member, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="o">
+      <text>If an XML element that refers to a Java annotation with a member with no default value does not declare a value for that member, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+  </section>
+  
+  <section id="9.12" title="Deployment declarations">
+    <assertion id="a">
+      <text>The &lt;Deploy&gt;, &lt;Interceptors&gt; and &lt;Decorators&gt; elements in the Java EE namespace determine which beans, interceptors and decorators are enabled in a particular deployment</text>
+    </assertion>
+  </section>
+  
+  <section id="9.12.1" title="The &lt;Deploy&gt; declaration">
+    <assertion id="a">
+      <text>Each direct child element of a &lt;Deploy&gt; element is interpreted as the declaring an enabled deployment type, as specified in Section 2.5.6, "Enabled deployment types"</text>
+    </assertion>
+    
+    <assertion id="b">
+      <text>Each child element is interpreted as a Java annotation type. If no such Java type exists in the classpath, a DefinitionException is thrown by the container at deployment time. If the type is not a deployment type, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="c">
+      <text>If the same deployment type is declared more than once, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>    
+  </section>
+  
+  <section id="9.12.2" title="The &lt;Interceptors&gt; declaration">
+    <assertion id="a">
+      <text>Each direct child element of an &lt;Interceptors&gt; element is interpreted as the declaring an enabled interceptor, as specified in Section A.3.7, "Interceptor enablement and ordering".</text>
+    </assertion>
+    
+    <assertion id="b">
+      <text>Each child element is interpreted as a Java class. If no such Java class exists in the classpath, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="c">
+      <text>If the same interceptor is declared more than once, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+  
+  </section>
+  
+  <section id="9.12.3" title="The &lt;Decorators&gt; declaration">
+    <assertion id="a">
+      <text>Each direct child element of a &lt;Decorators&gt; element is interpreted as the declaring an enabled decorator, as specified in Section A.5.5, "Decorator enablement and ordering".</text>
+    </assertion>
+    
+    <assertion id="b">
+      <text>Each child element is interpreted as a Java class. If no such Java class exists in the classpath, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+    
+    <assertion id="c">
+      <text>If the same decorator is declared more than once, a DefinitionException is thrown by the container at deployment time.</text>
+    </assertion>
+  </section>
 
 </specification>




More information about the weld-commits mailing list