[webbeans-commits] Webbeans SVN: r1616 - ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/introspector and 18 other directories.
webbeans-commits at lists.jboss.org
webbeans-commits at lists.jboss.org
Fri Feb 20 14:30:01 EST 2009
Author: pete.muir at jboss.org
Date: 2009-02-20 14:30:00 -0500 (Fri, 20 Feb 2009)
New Revision: 1616
Added:
ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/examples/ExampleTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/AndalusianChicken.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Animal.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/AnimalStereotype.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/AnotherDeploymentType.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/BeanWithStaticProducerMethod.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Bite.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/BlackWidow.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Chicken.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/DaddyLongLegs.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/DeadlyAnimal.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/DeadlySpider.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/DefangedTarantula.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Egg.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/FunnelWeaver.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/LadybirdSpider.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/ProducerMethodDefinitionTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Spider.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/SpiderDeploymentType.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/SpiderProducer.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Tame.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Tarantula.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/WolfSpider.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Yummy.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/notBusinessMethod/
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/notBusinessMethod/FunnelWeaver.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/notBusinessMethod/NotABusinessMethodTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/notBusinessMethod/SpiderProducer.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedDisposes/
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedDisposes/ParameterAnnotatedDisposesTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedDisposes/SpiderProducer_Broken.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedObserves/
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedObserves/ParameterAnnotatedObservesTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedObserves/SpiderProducer_Broken.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithTypeParameter/
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithTypeParameter/FunnelWeaver.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithTypeParameter/ParameterizedTypeWithTypeParameterTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithTypeParameter/SpiderProducer.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithWildcard/
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithWildcard/FunnelWeaver.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithWildcard/PamaterizedTypeWithWildcardTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithWildcard/SpiderProducer.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/Animal.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/AnimalStereotype.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/SpiderProducer_Broken.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/StereotypeEnforcesRequiredTypesTest.java
tck/trunk/impl/src/main/resources/org/jboss/jsr299/tck/unit/implementation/
tck/trunk/impl/src/main/resources/org/jboss/jsr299/tck/unit/implementation/producer/
tck/trunk/impl/src/main/resources/org/jboss/jsr299/tck/unit/implementation/producer/method/
tck/trunk/impl/src/main/resources/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/
tck/trunk/impl/src/main/resources/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/beans.xml
Removed:
ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/examples/Tests.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/ProducerMethodDefinitionTest.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/AbstractProducerBean.java
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/introspector/AnnotatedItem.java
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/introspector/ForwardingAnnotatedItem.java
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/introspector/jlr/AbstractAnnotatedItem.java
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/introspector/jlr/AnnotatedMethodImpl.java
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/util/Proxies.java
ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/util/Reflections.java
tck/trunk/api/src/main/java/org/jboss/jsr299/tck/spi/Beans.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/AbstractTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/SpiderProducer.java
Log:
convert producer method tests to @Artifact (one broken) and fix a bug in the RI reflection layer
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-02-20 16:09:48 UTC (rev 1615)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/bean/AbstractBean.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -158,8 +158,7 @@
*/
protected void initTypes()
{
- types = new HashSet<Type>();
- Reflections.getTypeHierachy(getType(), types);
+ types = new Reflections.HierarchyDiscovery<Type>(getAnnotatedItem().getUnderlyingType()).getFlattenedTypes();
}
/**
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-02-20 16:09:48 UTC (rev 1615)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/bean/AbstractProducerBean.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -116,10 +116,7 @@
{
try
{
- if (getAnnotatedItem() != null)
- {
- this.type = getAnnotatedItem().getType();
- }
+ this.type = getAnnotatedItem().getType();
}
catch (ClassCastException e)
{
Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/introspector/AnnotatedItem.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/introspector/AnnotatedItem.java 2009-02-20 16:09:48 UTC (rev 1615)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/introspector/AnnotatedItem.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -126,6 +126,8 @@
* @return The type of the element
*/
public Class<T> getType();
+
+ public Type getUnderlyingType();
/**
* Extends Java Class assignability such that actual type parameters are also
Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/introspector/ForwardingAnnotatedItem.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/introspector/ForwardingAnnotatedItem.java 2009-02-20 16:09:48 UTC (rev 1615)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/introspector/ForwardingAnnotatedItem.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -118,6 +118,11 @@
{
return delegate().getType();
}
+
+ public Type getUnderlyingType()
+ {
+ return delegate().getUnderlyingType();
+ }
/**
* @see org.jboss.webbeans.introspector.AnnotatedItem
Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/introspector/jlr/AbstractAnnotatedItem.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/introspector/jlr/AbstractAnnotatedItem.java 2009-02-20 16:09:48 UTC (rev 1615)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/introspector/jlr/AbstractAnnotatedItem.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -18,6 +18,7 @@
package org.jboss.webbeans.introspector.jlr;
import java.lang.annotation.Annotation;
+import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
import java.util.Arrays;
import java.util.Set;
@@ -52,8 +53,11 @@
}
+ public Type getUnderlyingType()
+ {
+ return getType();
+ }
-
// Cached string representation
private String toString;
private final AnnotationStore annotationStore;
@@ -166,9 +170,16 @@
return true;
}
}
- else
+ else if (type instanceof ParameterizedType)
{
-
+ ParameterizedType parameterizedType = (ParameterizedType) type;
+ if (parameterizedType.getRawType() instanceof Class)
+ {
+ if (isAssignableFrom((Class<?>) parameterizedType.getRawType(), parameterizedType.getActualTypeArguments()))
+ {
+ return true;
+ }
+ }
}
}
return false;
Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/introspector/jlr/AnnotatedMethodImpl.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/introspector/jlr/AnnotatedMethodImpl.java 2009-02-20 16:09:48 UTC (rev 1615)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/introspector/jlr/AnnotatedMethodImpl.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -48,6 +48,8 @@
// The actual type arguments
private final Type[] actualTypeArguments;
+ private final Type underlyingType;
+ private final Class<T> type;
// The underlying method
private final Method method;
@@ -87,12 +89,15 @@
this.method = method;
this.method.setAccessible(true);
this.declaringClass = declaringClass;
+ this.type = (Class<T>) method.getReturnType();
if (method.getGenericReturnType() instanceof ParameterizedType)
{
- this.actualTypeArguments = ((ParameterizedType) method.getGenericReturnType()).getActualTypeArguments();
+ this.underlyingType = method.getGenericReturnType();
+ this.actualTypeArguments = ((ParameterizedType) underlyingType).getActualTypeArguments();
}
else
{
+ this.underlyingType = type;
this.actualTypeArguments = new Type[0];
}
@@ -132,58 +137,33 @@
}
}
- /**
- * Gets the annotated method
- *
- * @return The method
- */
public Method getAnnotatedMethod()
{
return method;
}
- /**
- * Gets the delegate
- *
- * @return The delegate
- */
public Method getDelegate()
{
return method;
}
- /**
- * Gets the type of the method
- *
- * @return The return type of the method
- */
@SuppressWarnings("unchecked")
public Class<T> getType()
{
- return (Class<T>) method.getReturnType();
+ return type;
}
+
+ @Override
+ public Type getUnderlyingType()
+ {
+ return underlyingType;
+ }
- /**
- * Gets the actual type arguments
- *
- * @return The actual type arguments
- *
- * @see org.jboss.webbeans.introspector.AnnotatedMethod#getActualTypeArguments()
- */
public Type[] getActualTypeArguments()
{
return actualTypeArguments;
}
- /**
- * Gets the annotated parameters
- *
- * If the parameters are null, they are initialized first
- *
- * @return The annotated parameters
- *
- * @see org.jboss.webbeans.introspector.AnnotatedMethod#getParameters()
- */
public List<AnnotatedParameter<?>> getParameters()
{
return Collections.unmodifiableList(parameters);
@@ -194,25 +174,11 @@
return method.getParameterTypes();
}
- /**
- * Gets the parameter abstractions with a given annotation type
- *
- * If the parameter abstractions are null, they are initialized first
- *
- * @param annotationType The annotation type to match
- * @return The list of abstracted parameters with given annotation type
- * present. An empty list is returned if there are no matches
- */
public List<AnnotatedParameter<?>> getAnnotatedParameters(Class<? extends Annotation> annotationType)
{
return Collections.unmodifiableList(annotatedParameters.get(annotationType));
}
- /**
- * Compares two annotated methods (delegates)
- *
- * @return True if equals, false otherwise
- */
@Override
public boolean equals(Object other)
{
@@ -252,35 +218,16 @@
return result;
}
- /**
- * Gets the name of the property
- *
- * @return The name
- *
- * @see org.jboss.webbeans.introspector.AnnotatedMethod#getPropertyName()
- */
public String getPropertyName()
{
return propertyName;
}
- /**
- * Gets the declaring class
- *
- * @return The declaring class
- *
- * @see org.jboss.webbeans.introspector.AnnotatedMethod#getDeclaringClass()
- */
public AnnotatedType<?> getDeclaringClass()
{
return declaringClass;
}
- /**
- * Gets a string representation of the method
- *
- * @return A string representation
- */
@Override
public String toString()
{
Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/util/Proxies.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/util/Proxies.java 2009-02-20 16:09:48 UTC (rev 1615)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/util/Proxies.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -16,6 +16,7 @@
*/
package org.jboss.webbeans.util;
+import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
import java.util.Iterator;
import java.util.LinkedHashSet;
@@ -142,7 +143,23 @@
*/
public static boolean isTypeProxyable(Type type)
{
- Class<?> clazz = (Class<?>) type;
+ if (type instanceof Class)
+ {
+ return isClassProxyable((Class<?>) type);
+ }
+ else if (type instanceof ParameterizedType)
+ {
+ Type rawType = ((ParameterizedType) type).getRawType();
+ if (rawType instanceof Class)
+ {
+ return isClassProxyable((Class<?>) rawType);
+ }
+ }
+ return false;
+ }
+
+ private static boolean isClassProxyable(Class<?> clazz)
+ {
if (clazz.isInterface())
{
return true;
Modified: ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/util/Reflections.java
===================================================================
--- ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/util/Reflections.java 2009-02-20 16:09:48 UTC (rev 1615)
+++ ri/trunk/webbeans-ri/src/main/java/org/jboss/webbeans/util/Reflections.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -43,6 +43,66 @@
*/
public class Reflections
{
+
+ public static class HierarchyDiscovery<T extends Type>
+ {
+
+ private final T type;
+
+ private Set<T> types;
+
+ public HierarchyDiscovery(T type)
+ {
+ this.type = type;
+ }
+
+ protected void add(T type)
+ {
+ types.add(type);
+ }
+
+ public Set<T> getFlattenedTypes()
+ {
+ if (types == null)
+ {
+ this.types = new HashSet<T>();
+ discoverTypes(type);
+ }
+ return types;
+ }
+
+
+ private void discoverTypes(T type)
+ {
+ if (type != null)
+ {
+ add(type);
+ if (type instanceof Class)
+ {
+ discoverFromClass((Class<?>) type);
+ }
+ else if (type instanceof ParameterizedType)
+ {
+ Type rawType = ((ParameterizedType) type).getRawType();
+ if (rawType instanceof Class)
+ {
+ discoverFromClass((Class<?>) rawType);
+ }
+ }
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ private void discoverFromClass(Class<?> clazz)
+ {
+ discoverTypes((T) clazz.getSuperclass());
+ for (Class<?> c : clazz.getInterfaces())
+ {
+ discoverTypes((T) c);
+ }
+ }
+
+ }
/**
* Gets the property name from a getter method
@@ -336,38 +396,19 @@
* reached. For each steps, adds all interfaces of the class to the set.
* Since the data structure is a set, duplications are eliminated
*
+ *
+ * @deprecated see {@link HierarchyDiscovery}
* @param clazz The class to examine
* @return The set of classes and interfaces in the hierarchy
* @see #getTypeHierachy(Class, Set)
*/
+ @Deprecated
public static Set<Class<?>> getTypeHierachy(Class<?> clazz)
{
- Set<Class<?>> classes = new HashSet<Class<?>>();
- getTypeHierachy(clazz, classes);
- return classes;
+ return new HierarchyDiscovery<Class<?>>(clazz).getFlattenedTypes();
}
/**
- * Gets the flattened type hierarchy for a class, including all super classes
- * and the entire interface type hierarchy
- *
- * @param clazz the class to examine
- * @param classes the set of types
- */
- public static void getTypeHierachy(Class<?> clazz, Set<? super Class<?>> classes)
- {
- if (clazz != null)
- {
- classes.add(clazz);
- getTypeHierachy(clazz.getSuperclass(), classes);
- for (Class<?> c : clazz.getInterfaces())
- {
- getTypeHierachy(c, classes);
- }
- }
- }
-
- /**
* Checks the bindingType to make sure the annotation was declared properly
* as a binding type (annotated with @BindingType).
*
Copied: ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/examples/ExampleTest.java (from rev 1612, ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/examples/Tests.java)
===================================================================
--- ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/examples/ExampleTest.java (rev 0)
+++ ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/examples/ExampleTest.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,90 @@
+package org.jboss.webbeans.test.examples;
+
+import java.util.Arrays;
+
+import javax.inject.Production;
+import javax.inject.Standard;
+
+import org.jboss.webbeans.test.unit.AbstractTest;
+import org.testng.annotations.Test;
+
+public class ExampleTest extends AbstractTest
+{
+ @Test
+ public void testGameGenerator() throws Exception {
+ setupGameGenerator();
+
+ new RunInDependentContext()
+ {
+
+ @Override
+ protected void execute() throws Exception
+ {
+ Game game1 = manager.getInstanceByType(Game.class);
+ Game game2 = manager.getInstanceByType(Game.class);
+ assert game1!=game2;
+ assert game1.getNumber()!=game2.getNumber();
+ Generator gen1 = manager.getInstanceByType(Generator.class);
+ Generator gen2 = manager.getInstanceByType(Generator.class);
+ assert gen1.getRandom()!=null;
+ assert gen1.getRandom()==gen2.getRandom();
+ }
+
+ }.run();
+ }
+
+ private void setupGameGenerator() throws NoSuchMethodException
+ {
+ deployBeans(Game.class, Generator.class);
+ }
+
+ @Test
+ public void testMockSentenceTranslator() throws Exception {
+
+ manager.setEnabledDeploymentTypes(Arrays.asList(Standard.class, Production.class, Mock.class));
+ setupTextTranslator();
+
+ new RunInDependentContext()
+ {
+
+ @Override
+ protected void execute() throws Exception
+ {
+ TextTranslator tt2 = manager.getInstanceByType(TextTranslator.class);
+ assert "Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet.".equals( tt2.translate("Hello world. How's tricks?") );
+ }
+
+ }.run();
+ }
+
+ @Test
+ public void testSentenceTranslator() throws Exception {
+ setupTextTranslator();
+
+ new RunInDependentContext()
+ {
+
+ @Override
+ protected void execute() throws Exception
+ {
+ TextTranslator tt1 = manager.getInstanceByType(TextTranslator.class);
+ try
+ {
+ tt1.translate("hello world");
+ assert false;
+ }
+ catch (UnsupportedOperationException uoe)
+ {
+ //expected
+ }
+ }
+
+ }.run();
+ }
+
+ private void setupTextTranslator()
+ {
+ deployBeans(SentenceParser.class, SentenceTranslator.class, MockSentenceTranslator.class, TextTranslator.class);
+ }
+
+}
Deleted: ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/examples/Tests.java
===================================================================
--- ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/examples/Tests.java 2009-02-20 16:09:48 UTC (rev 1615)
+++ ri/trunk/webbeans-ri/src/test/java/org/jboss/webbeans/test/examples/Tests.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -1,90 +0,0 @@
-package org.jboss.webbeans.test.examples;
-
-import java.util.Arrays;
-
-import javax.inject.Production;
-import javax.inject.Standard;
-
-import org.jboss.webbeans.test.unit.AbstractTest;
-import org.testng.annotations.Test;
-
-public class Tests extends AbstractTest
-{
- @Test
- public void testGameGenerator() throws Exception {
- setupGameGenerator();
-
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- Game game1 = manager.getInstanceByType(Game.class);
- Game game2 = manager.getInstanceByType(Game.class);
- assert game1!=game2;
- assert game1.getNumber()!=game2.getNumber();
- Generator gen1 = manager.getInstanceByType(Generator.class);
- Generator gen2 = manager.getInstanceByType(Generator.class);
- assert gen1.getRandom()!=null;
- assert gen1.getRandom()==gen2.getRandom();
- }
-
- }.run();
- }
-
- private void setupGameGenerator() throws NoSuchMethodException
- {
- deployBeans(Game.class, Generator.class);
- }
-
- @Test
- public void testMockSentenceTranslator() throws Exception {
-
- manager.setEnabledDeploymentTypes(Arrays.asList(Standard.class, Production.class, Mock.class));
- setupTextTranslator();
-
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- TextTranslator tt2 = manager.getInstanceByType(TextTranslator.class);
- assert "Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet.".equals( tt2.translate("Hello world. How's tricks?") );
- }
-
- }.run();
- }
-
- @Test
- public void testSentenceTranslator() throws Exception {
- setupTextTranslator();
-
- new RunInDependentContext()
- {
-
- @Override
- protected void execute() throws Exception
- {
- TextTranslator tt1 = manager.getInstanceByType(TextTranslator.class);
- try
- {
- tt1.translate("hello world");
- assert false;
- }
- catch (UnsupportedOperationException uoe)
- {
- //expected
- }
- }
-
- }.run();
- }
-
- private void setupTextTranslator()
- {
- deployBeans(SentenceParser.class, SentenceTranslator.class, MockSentenceTranslator.class, TextTranslator.class);
- }
-
-}
Modified: tck/trunk/api/src/main/java/org/jboss/jsr299/tck/spi/Beans.java
===================================================================
--- tck/trunk/api/src/main/java/org/jboss/jsr299/tck/spi/Beans.java 2009-02-20 16:09:48 UTC (rev 1615)
+++ tck/trunk/api/src/main/java/org/jboss/jsr299/tck/spi/Beans.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -1,6 +1,5 @@
package org.jboss.jsr299.tck.spi;
-import java.lang.reflect.Field;
import java.lang.reflect.Method;
import javax.inject.manager.Bean;
@@ -104,20 +103,6 @@
*/
public boolean isEntityBean(Class<?> clazz);
- /**
- * Create a new producer field bean from the given method.
- *
- * @param <T> The type of the bean
- * @param field the producer field
- * @param declaringBean
- * @return the producer bean
- *
- * Deprecated, {@link StandaloneContainers#deploy(Iterable, Iterable)} should
- * be used. This method will be removed when the TCK is released.
- */
- @Deprecated
- public <T> Bean<T> createProducerFieldBean(Field field, Bean<?> declaringBean);
-
public boolean isProxy(Object instance);
}
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/AbstractTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/AbstractTest.java 2009-02-20 16:09:48 UTC (rev 1615)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/AbstractTest.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -6,7 +6,6 @@
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.lang.annotation.Annotation;
-import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.Arrays;
@@ -88,13 +87,7 @@
{
return getCurrentConfiguration().getBeans().createProducerMethodBean(method, producerBean);
}
-
- @Deprecated
- public <T> Bean<T> createProducerFieldBean(Field field, Bean<?> producerBean)
- {
- return getCurrentConfiguration().getBeans().createProducerFieldBean(field, producerBean);
- }
-
+
/**
* Used to deploy simple beans in a standalone container.
*
Deleted: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/ProducerMethodDefinitionTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/ProducerMethodDefinitionTest.java 2009-02-20 16:09:48 UTC (rev 1615)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/ProducerMethodDefinitionTest.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -1,286 +0,0 @@
-package org.jboss.jsr299.tck.unit.implementation.producer.method;
-
-import java.lang.reflect.Method;
-
-import javax.context.RequestScoped;
-import javax.inject.Current;
-import javax.inject.DefinitionException;
-import javax.inject.Production;
-import javax.inject.manager.Bean;
-
-import org.hibernate.tck.annotations.SpecAssertion;
-import org.hibernate.tck.annotations.SpecAssertions;
-import org.jboss.jsr299.tck.AbstractDeclarativeTest;
-import org.testng.annotations.Test;
-
-/**
- *
- * Spec version: PRD2
- *
- */
-public class ProducerMethodDefinitionTest extends AbstractDeclarativeTest
-{
-
- @Test(groups = "producerMethod")
- @SpecAssertion(section = "2.5.3", id = "g")
- public void testProducerMethodInheritsDeploymentTypeOfDeclaringWebBean() throws Exception
- {
- Bean<SpiderProducer> bean = createSimpleBean(SpiderProducer.class);
- getCurrentManager().addBean(bean);
- Method method = SpiderProducer.class.getMethod("produceTameTarantula");
- Bean<Tarantula> tarantulaModel = createProducerMethodBean(method, bean);
- tarantulaModel.getDeploymentType().equals(AnotherDeploymentType.class);
- }
-
- @Test(groups = "producerMethod")
- @SpecAssertion(section = "3.4", id = "b")
- public void testStaticMethod() throws Exception
- {
- Bean<BeanWithStaticProducerMethod> bean = createSimpleBean(BeanWithStaticProducerMethod.class);
- getCurrentManager().addBean(bean);
- Method method = BeanWithStaticProducerMethod.class.getMethod("getString");
- createProducerMethodBean(method, bean);
- }
-
- @Test(groups = { "stub", "producerMethod", "enterpriseBeans" }, expectedExceptions = DefinitionException.class)
- @SpecAssertion(section = "3.4", id = "d")
- public void testProducerMethodIsNotBusinessMethod() throws Exception
- {
- assert false;
- }
-
- @Test(groups = "producerMethod")
- @SpecAssertion(section = "3.4", id = "g")
- public void testParameterizedReturnType() throws Exception
- {
- Bean<SpiderProducer> bean = createSimpleBean(SpiderProducer.class);
- getCurrentManager().addBean(bean);
- Method method = SpiderProducer.class.getMethod("getFunnelWeaverSpider");
- createProducerMethodBean(method, bean);
- }
-
- @Test(groups = "producerMethod", expectedExceptions = DefinitionException.class)
- @SpecAssertion(section = "3.4", id = "h")
- public void testParameterizedReturnTypeWithWildcard() throws Exception
- {
- Bean<SpiderProducer> bean = createSimpleBean(SpiderProducer.class);
- getCurrentManager().addBean(bean);
- Method method = SpiderProducer.class.getMethod("getAnotherFunnelWeaver");
- createProducerMethodBean(method, bean);
- }
-
- @Test(groups = "producerMethod", expectedExceptions = DefinitionException.class)
- @SpecAssertion(section = "3.4", id = "i")
- public void testParameterizedReturnTypeWithTypeParameter() throws Exception
- {
- Bean<SpiderProducer> bean = createSimpleBean(SpiderProducer.class);
- getCurrentManager().addBean(bean);
- Method method = SpiderProducer.class.getMethod("getFunnelWeaver");
- createProducerMethodBean(method, bean);
- }
-
- @Test(groups = "producerMethod")
- @SpecAssertions( { @SpecAssertion(section = "3.4", id = "b"),
- @SpecAssertion(section = "2.3.1", id = "a") })
- public void testDefaultBindingType() throws Exception
- {
- Bean<SpiderProducer> bean = createSimpleBean(SpiderProducer.class);
- getCurrentManager().addBean(bean);
- Method method = SpiderProducer.class.getMethod("produceTarantula");
- Bean<Tarantula> tarantulaModel = createProducerMethodBean(method, bean);
- assert tarantulaModel.getBindings().size() == 1;
- assert tarantulaModel.getBindings().iterator().next().annotationType().equals(Current.class);
- }
-
- @Test(groups = "producerMethod")
- @SpecAssertions({
- @SpecAssertion(section = "3.4.1", id = "c"),
- @SpecAssertion(section="2.2", id = "l")
- })
- public void testApiTypeForClassReturn() throws Exception
- {
- Bean<SpiderProducer> bean = createSimpleBean(SpiderProducer.class);
- getCurrentManager().addBean(bean);
- Method method = SpiderProducer.class.getMethod("produceTarantula");
- Bean<Tarantula> tarantulaModel = createProducerMethodBean(method, bean);
- assert tarantulaModel.getTypes().size() == 6;
- assert tarantulaModel.getTypes().contains(Tarantula.class);
- assert tarantulaModel.getTypes().contains(DeadlySpider.class);
- assert tarantulaModel.getTypes().contains(Spider.class);
- assert tarantulaModel.getTypes().contains(Animal.class);
- assert tarantulaModel.getTypes().contains(DeadlyAnimal.class);
- assert tarantulaModel.getTypes().contains(Object.class);
- }
-
- @Test(groups = "producerMethod")
- @SpecAssertion(section = "3.4.1", id = "a")
- public void testApiTypeForInterfaceReturn() throws Exception
- {
- Bean<SpiderProducer> bean = createSimpleBean(SpiderProducer.class);
- getCurrentManager().addBean(bean);
- Method method = SpiderProducer.class.getMethod("makeASpider");
- Bean<Animal> animalModel = createProducerMethodBean(method, bean);
- assert animalModel.getTypes().size() == 2;
- assert animalModel.getTypes().contains(Animal.class);
- assert animalModel.getTypes().contains(Object.class);
- }
-
- @Test(groups = "producerMethod")
- @SpecAssertion(section = "3.4.1", id = "b")
- public void testApiTypeForPrimitiveReturn() throws Exception
- {
- Bean<SpiderProducer> bean = createSimpleBean(SpiderProducer.class);
- getCurrentManager().addBean(bean);
- Method method = SpiderProducer.class.getMethod("getWolfSpiderSize");
- Bean<Integer> intModel = createProducerMethodBean(method, bean);
- assert intModel.getTypes().size() == 2;
- assert intModel.getTypes().contains(int.class);
- assert intModel.getTypes().contains(Object.class);
- }
-
- @Test(groups = "producerMethod")
- @SpecAssertions( { @SpecAssertion(section = "3.4.1", id = "b"),
- @SpecAssertion(section = "2.2", id = "j") })
- public void testApiTypeForArrayTypeReturn() throws Exception
- {
- Bean<SpiderProducer> bean = createSimpleBean(SpiderProducer.class);
- getCurrentManager().addBean(bean);
- Method method = SpiderProducer.class.getMethod("getSpiders");
- Bean<Spider[]> spidersModel = createProducerMethodBean(method, bean);
- assert spidersModel.getTypes().size() == 2;
- assert spidersModel.getTypes().contains(Spider[].class);
- assert spidersModel.getTypes().contains(Object.class);
- }
-
- @Test(groups = "producerMethod")
- @SpecAssertion(section = "3.4.2", id = "be")
- public void testBindingType() throws Exception
- {
- Bean<SpiderProducer> bean = createSimpleBean(SpiderProducer.class);
- getCurrentManager().addBean(bean);
- Method method = SpiderProducer.class.getMethod("produceTameTarantula");
- Bean<Tarantula> tarantulaModel = createProducerMethodBean(method, bean);
- assert tarantulaModel.getBindings().size() == 1;
- assert tarantulaModel.getBindings().iterator().next().annotationType().equals(Tame.class);
- }
-
- @Test(groups = "producerMethod")
- @SpecAssertion(section = "3.4.2", id = "ba")
- public void testScopeType() throws Exception
- {
- Bean<SpiderProducer> bean = createSimpleBean(SpiderProducer.class);
- getCurrentManager().addBean(bean);
- Method method = SpiderProducer.class.getMethod("produceDaddyLongLegs");
- Bean<DaddyLongLegs> daddyLongLegsModel = createProducerMethodBean(method, bean);
- assert daddyLongLegsModel.getScopeType().equals(RequestScoped.class);
-
- // TODO Inherit scope from returned web bean?
- }
-
- @Test(groups = "producerMethod")
- @SpecAssertions({
- @SpecAssertion(section = "3.4.2", id = "bc"),
- @SpecAssertion(section = "2.5.3", id = "b")
- })
- public void testDeploymentType() throws Exception
- {
- Bean<SpiderProducer> bean = createSimpleBean(SpiderProducer.class);
- getCurrentManager().addBean(bean);
- Method method = SpiderProducer.class.getMethod("getLadybirdSpider");
- Bean<LadybirdSpider> ladybirdSpiderModel = createProducerMethodBean(method, bean);
- assert ladybirdSpiderModel.getDeploymentType().equals(Production.class);
- }
-
- @Test(groups = "producerMethod")
- @SpecAssertions({
- @SpecAssertion(section = "3.4.2", id = "bb"),
- @SpecAssertion(section = "2.6.1", id = "b")
- })
- public void testNamedMethod() throws Exception
- {
- Bean<SpiderProducer> bean = createSimpleBean(SpiderProducer.class);
- getCurrentManager().addBean(bean);
- Method method = SpiderProducer.class.getMethod("produceBlackWidow");
- Bean<BlackWidow> blackWidowSpiderModel = createProducerMethodBean(method, bean);
- assert blackWidowSpiderModel.getName().equals("blackWidow");
- }
-
- @Test(groups = "producerMethod")
- @SpecAssertions({
- @SpecAssertion(section = "3.4.2", id = "bb"),
- @SpecAssertion(section = "2.6.1", id = "d"),
- @SpecAssertion(section = "2.4.12", id = "a")
- })
- public void testDefaultNamedMethod() throws Exception
- {
- Bean<SpiderProducer> bean = createSimpleBean(SpiderProducer.class);
- getCurrentManager().addBean(bean);
- Method method = SpiderProducer.class.getMethod("produceDaddyLongLegs");
- Bean<DaddyLongLegs> daddyLongLegsSpiderModel = createProducerMethodBean(method, bean);
- assert daddyLongLegsSpiderModel.getName().equals("produceDaddyLongLegs");
- }
-
- @Test(groups = "producerMethod", expectedExceptions = DefinitionException.class)
- @SpecAssertion(section = "3.4.2", id = "d")
- public void testProducerMethodWithParameterAnnotatedDisposes() throws Exception
- {
- Bean<SpiderProducer_Broken> bean = createSimpleBean(SpiderProducer_Broken.class);
- getCurrentManager().addBean(bean);
- Method method = SpiderProducer_Broken.class.getMethod("dispose", String.class);
- createProducerMethodBean(method, bean);
- }
-
- @Test(groups = "producerMethod", expectedExceptions = DefinitionException.class)
- @SpecAssertion(section = "3.4.2", id = "e")
- public void testProducerMethodWithParameterAnnotatedObserves() throws Exception
- {
- Bean<SpiderProducer_Broken> bean = createSimpleBean(SpiderProducer_Broken.class);
- getCurrentManager().addBean(bean);
- Method method = SpiderProducer_Broken.class.getMethod("observe", String.class);
- createProducerMethodBean(method, bean);
- }
-
- // Review 2.2
- @Test(groups = "producerMethod")
- @SpecAssertions({
- @SpecAssertion(section = "2.7.2", id = "b"),
- @SpecAssertion(section = "3.4.2", id = "ba"),
- @SpecAssertion(section = "2.4.5", id = "c"),
- @SpecAssertion(section = "3.4.2", id = "bd")
- })
- public void testStereotypeSpecifiesScope() throws Exception
- {
- Bean<SpiderProducer> bean = createSimpleBean(SpiderProducer.class);
- getCurrentManager().addBean(bean);
- Method method = SpiderProducer.class.getMethod("produceWolfSpider");
- Bean<WolfSpider> wolfSpider = createProducerMethodBean(method, bean);
- // assert wolfSpiderModel.getMergedStereotypes().getRequiredTypes().size()
- // == 1;
- // assert
- // wolfSpiderModel.getMergedStereotypes().getRequiredTypes().contains(Animal.class);
- assert wolfSpider.getScopeType().equals(RequestScoped.class);
- }
-
- @Test(groups = "producerMethod", expectedExceptions = DefinitionException.class)
- @SpecAssertions({
- @SpecAssertion(section = "2.7.2", id = "b"),
- @SpecAssertion(section = "3.4.2", id = "bc"),
- @SpecAssertion(section = "2.7.4", id = "b")
- })
- public void testStereotypeEnforcesTypes() throws Exception
- {
- Bean<SpiderProducer_Broken> bean = createSimpleBean(SpiderProducer_Broken.class);
- getCurrentManager().addBean(bean);
- Method method = SpiderProducer_Broken.class.getMethod("produceInteger");
- createProducerMethodBean(method, bean);
- }
-
- @Test
- @SpecAssertion(section = "4.2", id = "d")
- public void testNonStaticProducerMethodNotInherited()
- {
- deployBeans(InfertileChicken.class);
- assert getCurrentManager().resolveByType(Egg.class).size() == 0;
- }
-
-}
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/SpiderProducer.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/SpiderProducer.java 2009-02-20 16:09:48 UTC (rev 1615)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/SpiderProducer.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -35,12 +35,7 @@
{
return new FunnelWeaver<Object>();
}
-
- @Produces public <T> FunnelWeaver<T> getFunnelWeaver()
- {
- return new FunnelWeaver<T>();
- }
-
+
@Produces public Animal makeASpider()
{
return new WolfSpider();
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/AndalusianChicken.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/AndalusianChicken.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/AndalusianChicken.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,16 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+import javax.inject.Specializes;
+
+ at Specializes
+ at AnotherDeploymentType
+class AndalusianChicken extends Chicken
+{
+ private static Egg egg = new Egg();
+
+ @Override
+ public Egg getEgg()
+ {
+ return egg;
+ }
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/AndalusianChicken.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Animal.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Animal.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Animal.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+interface Animal
+{
+
+}
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/AnimalStereotype.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/AnimalStereotype.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/AnimalStereotype.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,21 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+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.Retention;
+import java.lang.annotation.Target;
+
+import javax.annotation.Stereotype;
+import javax.context.RequestScoped;
+
+ at Stereotype(requiredTypes=Animal.class)
+ at Target( { TYPE, METHOD, FIELD })
+ at Retention(RUNTIME)
+ at RequestScoped
+ at interface AnimalStereotype
+{
+
+}
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/AnotherDeploymentType.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/AnotherDeploymentType.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/AnotherDeploymentType.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,20 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+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.inject.DeploymentType;
+
+ at Target( { TYPE, METHOD })
+ at Retention(RUNTIME)
+ at Documented
+ at DeploymentType
+ at interface AnotherDeploymentType
+{
+
+}
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/BeanWithStaticProducerMethod.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/BeanWithStaticProducerMethod.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/BeanWithStaticProducerMethod.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,15 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+import javax.inject.Produces;
+import javax.inject.Production;
+
+ at Production
+class BeanWithStaticProducerMethod
+{
+
+ @Produces public static String getString()
+ {
+ return "Pete";
+ }
+
+}
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Bite.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Bite.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Bite.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+public interface Bite
+{
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Bite.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/BlackWidow.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/BlackWidow.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/BlackWidow.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+class BlackWidow extends Spider implements DeadlySpider
+{
+
+}
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Chicken.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Chicken.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Chicken.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,19 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+import javax.inject.Produces;
+
+class Chicken
+{
+ private static Egg egg = new Egg();
+
+ @Produces @Yummy
+ public Egg produceEgg()
+ {
+ return getEgg();
+ }
+
+ public Egg getEgg()
+ {
+ return egg;
+ }
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Chicken.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/DaddyLongLegs.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/DaddyLongLegs.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/DaddyLongLegs.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+class DaddyLongLegs extends Spider
+{
+
+}
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/DeadlyAnimal.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/DeadlyAnimal.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/DeadlyAnimal.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+interface DeadlyAnimal
+{
+
+}
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/DeadlySpider.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/DeadlySpider.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/DeadlySpider.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+interface DeadlySpider extends DeadlyAnimal
+{
+
+}
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/DefangedTarantula.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/DefangedTarantula.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/DefangedTarantula.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+class DefangedTarantula extends Tarantula
+{
+
+}
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Egg.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Egg.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Egg.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+class Egg
+{
+
+}
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/FunnelWeaver.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/FunnelWeaver.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/FunnelWeaver.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+class FunnelWeaver<T>
+{
+
+}
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/LadybirdSpider.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/LadybirdSpider.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/LadybirdSpider.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,16 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+import java.io.Serializable;
+
+import javax.context.ApplicationScoped;
+
+ at ApplicationScoped
+class LadybirdSpider extends Spider implements Serializable
+{
+
+ public void spinWeb()
+ {
+
+ }
+
+}
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/ProducerMethodDefinitionTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/ProducerMethodDefinitionTest.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/ProducerMethodDefinitionTest.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,201 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+import java.lang.annotation.Annotation;
+
+import javax.context.RequestScoped;
+import javax.inject.AnnotationLiteral;
+import javax.inject.Current;
+import javax.inject.TypeLiteral;
+import javax.inject.manager.Bean;
+
+import org.hibernate.tck.annotations.SpecAssertion;
+import org.hibernate.tck.annotations.SpecAssertions;
+import org.jboss.jsr299.tck.AbstractDeclarativeTest;
+import org.jboss.jsr299.tck.impl.packaging.Artifact;
+import org.jboss.jsr299.tck.impl.packaging.jsr299.BeansXml;
+import org.testng.annotations.Test;
+
+/**
+ *
+ * Spec version: PRD2
+ *
+ */
+ at Artifact
+ at BeansXml("beans.xml")
+public class ProducerMethodDefinitionTest extends AbstractDeclarativeTest
+{
+
+ private static final Annotation TAME_LITERAL = new AnnotationLiteral<Tame>() {};
+
+ @Test(groups = "producerMethod")
+ @SpecAssertion(section = "2.5.3", id = "g")
+ public void testProducerMethodInheritsDeploymentTypeOfDeclaringWebBean() throws Exception
+ {
+ assert getCurrentManager().resolveByType(Tarantula.class, TAME_LITERAL).size() == 1;
+ assert getCurrentManager().resolveByType(Tarantula.class, TAME_LITERAL).iterator().next().getDeploymentType().equals(AnotherDeploymentType.class);
+ }
+
+ @Test(groups = "producerMethod")
+ @SpecAssertion(section = "3.4", id = "b")
+ public void testStaticMethod() throws Exception
+ {
+ assert getCurrentManager().resolveByType(String.class).size() == 1;
+ assert getCurrentManager().getInstanceByType(String.class).equals(BeanWithStaticProducerMethod.getString());
+ }
+
+ @Test(groups = "producerMethod")
+ @SpecAssertion(section = "3.4", id = "g")
+ public void testParameterizedReturnType() throws Exception
+ {
+ assert getCurrentManager().resolveByType(new TypeLiteral<FunnelWeaver<Spider>>() {}).size() == 1;
+ }
+
+ @Test(groups = "producerMethod")
+ @SpecAssertions({
+ @SpecAssertion(section = "3.4", id = "b"),
+ @SpecAssertion(section = "2.3.1", id = "a")
+ })
+ public void testDefaultBindingType() throws Exception
+ {
+ assert getCurrentManager().resolveByType(Tarantula.class).size() == 1;
+ assert getCurrentManager().resolveByType(Tarantula.class).iterator().next().getBindings().size() == 1;
+ assert getCurrentManager().resolveByType(Tarantula.class).iterator().next().getBindings().iterator().next().annotationType().equals(Current.class);
+ }
+
+ @Test(groups = "producerMethod")
+ @SpecAssertions({
+ @SpecAssertion(section = "3.4.1", id = "c"),
+ @SpecAssertion(section="2.2", id = "l")
+ })
+ public void testApiTypeForClassReturn() throws Exception
+ {
+ assert getCurrentManager().resolveByType(Tarantula.class).size() == 1;
+ Bean<Tarantula> tarantula = getCurrentManager().resolveByType(Tarantula.class).iterator().next();
+
+ assert tarantula.getTypes().size() == 6;
+ assert tarantula.getTypes().contains(Tarantula.class);
+ assert tarantula.getTypes().contains(DeadlySpider.class);
+ assert tarantula.getTypes().contains(Spider.class);
+ assert tarantula.getTypes().contains(Animal.class);
+ assert tarantula.getTypes().contains(DeadlyAnimal.class);
+ assert tarantula.getTypes().contains(Object.class);
+ }
+
+ @Test(groups = "producerMethod")
+ @SpecAssertion(section = "3.4.1", id = "a")
+ public void testApiTypeForInterfaceReturn() throws Exception
+ {
+ assert getCurrentManager().resolveByType(Bite.class).size() == 1;
+ Bean<Bite> animal = getCurrentManager().resolveByType(Bite.class).iterator().next();
+ assert animal.getTypes().size() == 2;
+ assert animal.getTypes().contains(Bite.class);
+ assert animal.getTypes().contains(Object.class);
+ }
+
+ @Test(groups = "producerMethod")
+ @SpecAssertion(section = "3.4.1", id = "b")
+ public void testApiTypeForPrimitiveReturn() throws Exception
+ {
+ assert getCurrentManager().resolveByType(Integer.class).size() == 1;
+ Bean<Integer> integer = getCurrentManager().resolveByType(Integer.class).iterator().next();
+ assert integer.getTypes().size() == 2;
+ assert integer.getTypes().contains(int.class);
+ assert integer.getTypes().contains(Object.class);
+ }
+
+ @Test(groups = "producerMethod")
+ @SpecAssertions({
+ @SpecAssertion(section = "3.4.1", id = "b"),
+ @SpecAssertion(section = "2.2", id = "j")
+ })
+ public void testApiTypeForArrayTypeReturn() throws Exception
+ {
+ assert getCurrentManager().resolveByType(Spider[].class).size() == 1;
+ Bean<Spider[]> spiders = getCurrentManager().resolveByType(Spider[].class).iterator().next();
+ assert spiders.getTypes().size() == 2;
+ assert spiders.getTypes().contains(Spider[].class);
+ assert spiders.getTypes().contains(Object.class);
+ }
+
+ @Test(groups = "producerMethod")
+ @SpecAssertion(section = "3.4.2", id = "be")
+ public void testBindingType() throws Exception
+ {
+ assert getCurrentManager().resolveByType(Tarantula.class, TAME_LITERAL).size() == 1;
+ Bean<Tarantula> tarantula = getCurrentManager().resolveByType(Tarantula.class, TAME_LITERAL).iterator().next();
+ assert tarantula.getBindings().size() == 1;
+ assert tarantula.getBindings().iterator().next().annotationType().equals(Tame.class);
+ }
+
+ @Test(groups = "producerMethod")
+ @SpecAssertion(section = "3.4.2", id = "ba")
+ public void testScopeType() throws Exception
+ {
+ assert getCurrentManager().resolveByType(DaddyLongLegs.class).size() == 1;
+ Bean<DaddyLongLegs> daddyLongLegs = getCurrentManager().resolveByType(DaddyLongLegs.class).iterator().next();
+ assert daddyLongLegs.getScopeType().equals(RequestScoped.class);
+ }
+
+ @Test(groups = "producerMethod")
+ @SpecAssertions({
+ @SpecAssertion(section = "3.4.2", id = "bc"),
+ @SpecAssertion(section = "2.5.3", id = "b")
+ })
+ public void testDeploymentType() throws Exception
+ {
+ assert getCurrentManager().resolveByType(LadybirdSpider.class).size() == 1;
+ Bean<LadybirdSpider> ladybirdSpider = getCurrentManager().resolveByType(LadybirdSpider.class).iterator().next();
+ assert ladybirdSpider.getDeploymentType().equals(SpiderDeploymentType.class);
+ }
+
+ @Test(groups = "producerMethod")
+ @SpecAssertions({
+ @SpecAssertion(section = "3.4.2", id = "bb"),
+ @SpecAssertion(section = "2.6.1", id = "b")
+ })
+ public void testNamedMethod() throws Exception
+ {
+ assert getCurrentManager().resolveByType(BlackWidow.class).size() == 1;
+ Bean<BlackWidow> blackWidowSpider = getCurrentManager().resolveByType(BlackWidow.class).iterator().next();
+ assert blackWidowSpider.getName().equals("blackWidow");
+ }
+
+ @Test(groups = "producerMethod")
+ @SpecAssertions({
+ @SpecAssertion(section = "3.4.2", id = "bb"),
+ @SpecAssertion(section = "2.6.1", id = "d"),
+ @SpecAssertion(section = "2.4.12", id = "a")
+ })
+ public void testDefaultNamedMethod() throws Exception
+ {
+ assert getCurrentManager().resolveByType(DaddyLongLegs.class).size() == 1;
+ Bean<DaddyLongLegs> daddyLongLegsSpider = getCurrentManager().resolveByType(DaddyLongLegs.class).iterator().next();
+ assert daddyLongLegsSpider.getName().equals("produceDaddyLongLegs");
+ }
+
+
+
+
+ // Review 2.2
+ @Test(groups = "producerMethod")
+ @SpecAssertions({
+ @SpecAssertion(section = "2.7.2", id = "b"),
+ @SpecAssertion(section = "3.4.2", id = "ba"),
+ @SpecAssertion(section = "2.4.5", id = "c"),
+ @SpecAssertion(section = "3.4.2", id = "bd")
+ })
+ public void testStereotypeSpecifiesScope() throws Exception
+ {
+ assert getCurrentManager().resolveByType(WolfSpider.class).size() == 1;
+ Bean<WolfSpider> wolfSpider = getCurrentManager().resolveByType(WolfSpider.class).iterator().next();
+ assert wolfSpider.getScopeType().equals(RequestScoped.class);
+ }
+
+ @Test(groups="underInvestigation")
+ @SpecAssertion(section = "4.2", id = "d")
+ public void testNonStaticProducerMethodNotInherited()
+ {
+ assert getCurrentManager().resolveByType(Egg.class, new AnnotationLiteral<Yummy>() {}).size() == 0;
+ }
+
+}
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Spider.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Spider.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Spider.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,7 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+
+class Spider implements Animal
+{
+
+}
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/SpiderDeploymentType.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/SpiderDeploymentType.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/SpiderDeploymentType.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,20 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+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.inject.DeploymentType;
+
+ at Target( { TYPE, METHOD })
+ at Retention(RUNTIME)
+ at Documented
+ at DeploymentType
+ at interface SpiderDeploymentType
+{
+
+}
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/SpiderProducer.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/SpiderProducer.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/SpiderProducer.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,73 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+import javax.annotation.Named;
+import javax.context.RequestScoped;
+import javax.inject.Produces;
+
+ at AnotherDeploymentType
+class SpiderProducer
+{
+
+ private static Spider[] ALL_SPIDERS = { new Tarantula(), new LadybirdSpider(), new DaddyLongLegs() };
+
+ @Produces @Tame public Tarantula produceTameTarantula()
+ {
+ return new DefangedTarantula();
+ }
+
+ @Produces public Tarantula produceTarantula()
+ {
+ return new Tarantula();
+ }
+
+ @Produces public Spider getNullSpider()
+ {
+ return null;
+ }
+
+ @Produces public FunnelWeaver<Spider> getFunnelWeaverSpider()
+ {
+ return new FunnelWeaver<Spider>();
+ }
+
+ @Produces public Animal makeASpider()
+ {
+ return new WolfSpider();
+ }
+
+ @Produces public int getWolfSpiderSize()
+ {
+ return 4;
+ }
+
+ @Produces public Spider[] getSpiders()
+ {
+ return ALL_SPIDERS;
+ }
+
+ @Produces @Named @RequestScoped public DaddyLongLegs produceDaddyLongLegs()
+ {
+ return new DaddyLongLegs();
+ }
+
+ @Produces @Named @SpiderDeploymentType public LadybirdSpider getLadybirdSpider()
+ {
+ return new LadybirdSpider();
+ }
+
+ @Produces @Named("blackWidow") public BlackWidow produceBlackWidow()
+ {
+ return new BlackWidow();
+ }
+
+ @Produces @AnimalStereotype public WolfSpider produceWolfSpider()
+ {
+ return new WolfSpider();
+ }
+
+ @Produces public Bite getBite()
+ {
+ return new Bite() {};
+ }
+
+}
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Tame.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Tame.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Tame.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,22 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+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.Retention;
+import java.lang.annotation.Target;
+
+import javax.inject.BindingType;
+
+ at Target( { TYPE, METHOD, PARAMETER, FIELD })
+ at Retention(RUNTIME)
+ at Documented
+ at BindingType
+ at interface Tame
+{
+
+}
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Tarantula.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Tarantula.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Tarantula.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+class Tarantula extends Spider implements DeadlySpider
+{
+
+}
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/WolfSpider.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/WolfSpider.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/WolfSpider.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+class WolfSpider implements Animal
+{
+
+}
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Yummy.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Yummy.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Yummy.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,22 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.definition;
+
+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.Retention;
+import java.lang.annotation.Target;
+
+import javax.inject.BindingType;
+
+ at Target( { TYPE, METHOD, PARAMETER, FIELD })
+ at Retention(RUNTIME)
+ at Documented
+ at BindingType
+ at interface Yummy
+{
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/Yummy.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/notBusinessMethod/FunnelWeaver.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/notBusinessMethod/FunnelWeaver.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/notBusinessMethod/FunnelWeaver.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.notBusinessMethod;
+
+class FunnelWeaver<T>
+{
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/notBusinessMethod/FunnelWeaver.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/notBusinessMethod/NotABusinessMethodTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/notBusinessMethod/NotABusinessMethodTest.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/notBusinessMethod/NotABusinessMethodTest.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,22 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.notBusinessMethod;
+
+import javax.inject.DefinitionException;
+
+import org.hibernate.tck.annotations.SpecAssertion;
+import org.jboss.jsr299.tck.impl.packaging.Artifact;
+import org.jboss.jsr299.tck.impl.packaging.ExpectedDeploymentException;
+import org.testng.annotations.Test;
+
+ at Artifact
+ at ExpectedDeploymentException(DefinitionException.class)
+public class NotABusinessMethodTest
+{
+
+ @Test(groups = { "stub", "producerMethod", "enterpriseBeans" })
+ @SpecAssertion(section = "3.4", id = "d")
+ public void testProducerMethodIsNotBusinessMethod() throws Exception
+ {
+ assert false;
+ }
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/notBusinessMethod/NotABusinessMethodTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/notBusinessMethod/SpiderProducer.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/notBusinessMethod/SpiderProducer.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/notBusinessMethod/SpiderProducer.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,14 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.notBusinessMethod;
+
+import javax.inject.Produces;
+
+class SpiderProducer
+{
+
+ @Produces public FunnelWeaver<?> getAnotherFunnelWeaver()
+ {
+ return new FunnelWeaver<Object>();
+ }
+
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/notBusinessMethod/SpiderProducer.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedDisposes/ParameterAnnotatedDisposesTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedDisposes/ParameterAnnotatedDisposesTest.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedDisposes/ParameterAnnotatedDisposesTest.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,24 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.parameterAnnotatedDisposes;
+
+import javax.inject.DefinitionException;
+
+import org.hibernate.tck.annotations.SpecAssertion;
+import org.jboss.jsr299.tck.AbstractDeclarativeTest;
+import org.jboss.jsr299.tck.impl.packaging.Artifact;
+import org.jboss.jsr299.tck.impl.packaging.ExpectedDeploymentException;
+import org.testng.annotations.Test;
+
+ at Artifact
+ at ExpectedDeploymentException(DefinitionException.class)
+public class ParameterAnnotatedDisposesTest extends AbstractDeclarativeTest
+{
+
+
+ @Test(groups = "producerMethod")
+ @SpecAssertion(section = "3.4.2", id = "d")
+ public void testProducerMethodWithParameterAnnotatedDisposes() throws Exception
+ {
+ assert false;
+ }
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedDisposes/ParameterAnnotatedDisposesTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedDisposes/SpiderProducer_Broken.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedDisposes/SpiderProducer_Broken.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedDisposes/SpiderProducer_Broken.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,17 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.parameterAnnotatedDisposes;
+
+import javax.inject.Disposes;
+import javax.inject.Produces;
+import javax.inject.Production;
+
+ at Production
+class SpiderProducer_Broken
+{
+
+ @Produces
+ public String dispose(@Disposes String foo)
+ {
+ return "foo";
+ }
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedDisposes/SpiderProducer_Broken.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedObserves/ParameterAnnotatedObservesTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedObserves/ParameterAnnotatedObservesTest.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedObserves/ParameterAnnotatedObservesTest.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,23 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.parameterAnnotatedObserves;
+
+import javax.inject.DefinitionException;
+
+import org.hibernate.tck.annotations.SpecAssertion;
+import org.jboss.jsr299.tck.AbstractDeclarativeTest;
+import org.jboss.jsr299.tck.impl.packaging.Artifact;
+import org.jboss.jsr299.tck.impl.packaging.ExpectedDeploymentException;
+import org.testng.annotations.Test;
+
+ at Artifact
+ at ExpectedDeploymentException(DefinitionException.class)
+public class ParameterAnnotatedObservesTest extends AbstractDeclarativeTest
+{
+
+ @Test(groups = "producerMethod")
+ @SpecAssertion(section = "3.4.2", id = "e")
+ public void testProducerMethodWithParameterAnnotatedObserves() throws Exception
+ {
+ assert false;
+ }
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedObserves/ParameterAnnotatedObservesTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedObserves/SpiderProducer_Broken.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedObserves/SpiderProducer_Broken.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedObserves/SpiderProducer_Broken.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,17 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.parameterAnnotatedObserves;
+
+import javax.event.Observes;
+import javax.inject.Produces;
+import javax.inject.Production;
+
+ at Production
+class SpiderProducer_Broken
+{
+
+ @Produces
+ public String observe(@Observes String foo)
+ {
+ return "foo";
+ }
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parameterAnnotatedObserves/SpiderProducer_Broken.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithTypeParameter/FunnelWeaver.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithTypeParameter/FunnelWeaver.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithTypeParameter/FunnelWeaver.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.parametermizedTypeWithTypeParameter;
+
+class FunnelWeaver<T>
+{
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithTypeParameter/FunnelWeaver.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithTypeParameter/ParameterizedTypeWithTypeParameterTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithTypeParameter/ParameterizedTypeWithTypeParameterTest.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithTypeParameter/ParameterizedTypeWithTypeParameterTest.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,24 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.parametermizedTypeWithTypeParameter;
+
+import javax.inject.DefinitionException;
+
+import org.hibernate.tck.annotations.SpecAssertion;
+import org.jboss.jsr299.tck.AbstractDeclarativeTest;
+import org.jboss.jsr299.tck.impl.packaging.Artifact;
+import org.jboss.jsr299.tck.impl.packaging.ExpectedDeploymentException;
+import org.testng.annotations.Test;
+
+ at Artifact
+ at ExpectedDeploymentException(DefinitionException.class)
+public class ParameterizedTypeWithTypeParameterTest extends AbstractDeclarativeTest
+{
+
+
+ @Test(groups = "producerMethod")
+ @SpecAssertion(section = "3.4", id = "i")
+ public void testParameterizedReturnTypeWithTypeParameter() throws Exception
+ {
+ assert false;
+ }
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithTypeParameter/ParameterizedTypeWithTypeParameterTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithTypeParameter/SpiderProducer.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithTypeParameter/SpiderProducer.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithTypeParameter/SpiderProducer.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,13 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.parametermizedTypeWithTypeParameter;
+
+import javax.inject.Produces;
+
+class SpiderProducer
+{
+
+ @Produces public <T> FunnelWeaver<T> getFunnelWeaver()
+ {
+ return new FunnelWeaver<T>();
+ }
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithTypeParameter/SpiderProducer.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithWildcard/FunnelWeaver.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithWildcard/FunnelWeaver.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithWildcard/FunnelWeaver.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.parametermizedTypeWithWildcard;
+
+class FunnelWeaver<T>
+{
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithWildcard/FunnelWeaver.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithWildcard/PamaterizedTypeWithWildcardTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithWildcard/PamaterizedTypeWithWildcardTest.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithWildcard/PamaterizedTypeWithWildcardTest.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,23 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.parametermizedTypeWithWildcard;
+
+import javax.inject.DefinitionException;
+
+import org.hibernate.tck.annotations.SpecAssertion;
+import org.jboss.jsr299.tck.AbstractDeclarativeTest;
+import org.jboss.jsr299.tck.impl.packaging.Artifact;
+import org.jboss.jsr299.tck.impl.packaging.ExpectedDeploymentException;
+import org.testng.annotations.Test;
+
+ at Artifact
+ at ExpectedDeploymentException(DefinitionException.class)
+public class PamaterizedTypeWithWildcardTest extends AbstractDeclarativeTest
+{
+
+ @Test(groups = "producerMethod")
+ @SpecAssertion(section = "3.4", id = "h")
+ public void testParameterizedReturnTypeWithWildcard() throws Exception
+ {
+ assert false;
+ }
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithWildcard/PamaterizedTypeWithWildcardTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithWildcard/SpiderProducer.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithWildcard/SpiderProducer.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithWildcard/SpiderProducer.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,13 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.parametermizedTypeWithWildcard;
+
+import javax.inject.Produces;
+
+class SpiderProducer
+{
+
+ @Produces public FunnelWeaver<?> getFunnelWeaver()
+ {
+ return new FunnelWeaver<Object>();
+ }
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/parametermizedTypeWithWildcard/SpiderProducer.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/Animal.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/Animal.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/Animal.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,6 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.stereotypeEnforcesRequiredTypes;
+
+interface Animal
+{
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/Animal.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/AnimalStereotype.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/AnimalStereotype.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/AnimalStereotype.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,21 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.stereotypeEnforcesRequiredTypes;
+
+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.Retention;
+import java.lang.annotation.Target;
+
+import javax.annotation.Stereotype;
+import javax.context.RequestScoped;
+
+ at Stereotype(requiredTypes=Animal.class)
+ at Target( { TYPE, METHOD, FIELD })
+ at Retention(RUNTIME)
+ at RequestScoped
+ at interface AnimalStereotype
+{
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/AnimalStereotype.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/SpiderProducer_Broken.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/SpiderProducer_Broken.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/SpiderProducer_Broken.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,15 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.stereotypeEnforcesRequiredTypes;
+
+import javax.inject.Produces;
+import javax.inject.Production;
+
+ at Production
+class SpiderProducer_Broken
+{
+
+ @Produces @AnimalStereotype public Integer produceInteger()
+ {
+ return 1;
+ }
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/SpiderProducer_Broken.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/StereotypeEnforcesRequiredTypesTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/StereotypeEnforcesRequiredTypesTest.java (rev 0)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/StereotypeEnforcesRequiredTypesTest.java 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,29 @@
+package org.jboss.jsr299.tck.unit.implementation.producer.method.stereotypeEnforcesRequiredTypes;
+
+import javax.inject.DefinitionException;
+
+import org.hibernate.tck.annotations.SpecAssertion;
+import org.hibernate.tck.annotations.SpecAssertions;
+import org.jboss.jsr299.tck.AbstractDeclarativeTest;
+import org.jboss.jsr299.tck.impl.packaging.Artifact;
+import org.jboss.jsr299.tck.impl.packaging.ExpectedDeploymentException;
+import org.testng.annotations.Test;
+
+ at Artifact
+ at ExpectedDeploymentException(DefinitionException.class)
+public class StereotypeEnforcesRequiredTypesTest extends AbstractDeclarativeTest
+{
+
+
+ @Test(groups = "producerMethod")
+ @SpecAssertions({
+ @SpecAssertion(section = "2.7.2", id = "b"),
+ @SpecAssertion(section = "3.4.2", id = "bc"),
+ @SpecAssertion(section = "2.7.4", id = "b")
+ })
+ public void testStereotypeEnforcesTypes() throws Exception
+ {
+ assert false;
+ }
+
+}
Property changes on: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/implementation/producer/method/stereotypeEnforcesRequiredTypes/StereotypeEnforcesRequiredTypesTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: tck/trunk/impl/src/main/resources/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/beans.xml
===================================================================
--- tck/trunk/impl/src/main/resources/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/beans.xml (rev 0)
+++ tck/trunk/impl/src/main/resources/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/beans.xml 2009-02-20 19:30:00 UTC (rev 1616)
@@ -0,0 +1,9 @@
+<Beans xmlns="urn:java:ee"
+ xmlns:test="urn:java:org.jboss.jsr299.tck.unit.implementation.producer.method.definition">
+ <Deploy>
+ <Standard />
+ <Production />
+ <test:AnotherDeploymentType />
+ <test:SpiderDeploymentType />
+ </Deploy>
+</Beans>
Property changes on: tck/trunk/impl/src/main/resources/org/jboss/jsr299/tck/unit/implementation/producer/method/definition/beans.xml
___________________________________________________________________
Name: svn:mime-type
+ text/plain
More information about the weld-commits
mailing list