[webbeans-commits] Webbeans SVN: r2367 - tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/activities and 10 other directories.
webbeans-commits at lists.jboss.org
webbeans-commits at lists.jboss.org
Thu Apr 9 14:41:41 EDT 2009
Author: pete.muir at jboss.org
Date: 2009-04-09 14:41:41 -0400 (Thu, 09 Apr 2009)
New Revision: 2367
Removed:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/implementation/simple/definition/Order.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/implementation/simple/definition/interceptorAndDecorator/
Modified:
ri/trunk/impl/src/main/java/org/jboss/webbeans/ManagerImpl.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/activities/ActivitiesTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/dependent/DependentContextTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/passivating/Helsinki.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/passivating/PassivatingContextIntegrationTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/passivating/PassivatingContextTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/EventTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/register/fires1/ImplicitEventBeanTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/transactionalObservers/EventTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/implementation/enterprise/definition/EnterpriseBeanDefinitionTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/implementation/enterprise/definition/EnterpriseBeanViaXmlTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/implementation/simple/definition/SimpleBeanDefinitionTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/clientProxy/array/ArrayTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/clientProxy/privateconstructor/PrivateConstructorTest.java
tck/trunk/impl/src/main/resources/tck-audit.xml
Log:
Remove, enable and fix a few ri-broken tests
Modified: ri/trunk/impl/src/main/java/org/jboss/webbeans/ManagerImpl.java
===================================================================
--- ri/trunk/impl/src/main/java/org/jboss/webbeans/ManagerImpl.java 2009-04-09 16:48:39 UTC (rev 2366)
+++ ri/trunk/impl/src/main/java/org/jboss/webbeans/ManagerImpl.java 2009-04-09 18:41:41 UTC (rev 2367)
@@ -20,6 +20,7 @@
import java.io.InputStream;
import java.io.Serializable;
import java.lang.annotation.Annotation;
+import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
import java.lang.reflect.TypeVariable;
import java.lang.reflect.WildcardType;
@@ -379,7 +380,6 @@
* @see javax.inject.manager.Manager#resolveObservers(java.lang.Object,
* java.lang.annotation.Annotation[])
*/
- @SuppressWarnings("unchecked")
public <T> Set<Observer<T>> resolveObservers(T event, Annotation... bindings)
{
Class<?> clazz = event.getClass();
@@ -395,19 +395,36 @@
{
throw new DuplicateBindingTypeException("Duplicate binding types: " + bindings);
}
- Type t = new Reflections.HierarchyDiscovery(clazz).getResolvedType();
- for (Type type : Reflections.getActualTypeArguments(clazz))
+ checkEventType(clazz);
+ return eventManager.getObservers(event, bindings);
+ }
+
+ private void checkEventType(Type eventType)
+ {
+ Type[] types;
+ if (eventType instanceof Class)
{
+ types = Reflections.getActualTypeArguments((Class<?>) eventType);
+ }
+ else if (eventType instanceof ParameterizedType)
+ {
+ types = ((ParameterizedType) eventType).getActualTypeArguments();
+ }
+ else
+ {
+ throw new IllegalArgumentException("Event type " + eventType + " isn't a concrete type");
+ }
+ for (Type type : types)
+ {
if (type instanceof WildcardType)
{
- throw new IllegalArgumentException("Cannot resolve an event type parameterized with a wildcard " + clazz);
+ throw new IllegalArgumentException("Cannot provide an event type parameterized with a wildcard " + eventType);
}
if (type instanceof TypeVariable)
{
- throw new IllegalArgumentException("Cannot resolve an event type parameterized with a type parameter " + clazz);
+ throw new IllegalArgumentException("Cannot provide an event type parameterized with a type parameter " + eventType);
}
}
- return eventManager.getObservers(event, bindings);
}
/**
@@ -657,6 +674,7 @@
*/
public <T> Manager addObserverByType(Observer<T> observer, Type eventType, Annotation... bindings)
{
+ checkEventType(eventType);
this.eventManager.addObserver(observer, eventType, bindings);
for (ManagerImpl childActivity : childActivities)
{
@@ -772,7 +790,7 @@
{
if (creationalContext != null || (creationalContext == null && getContext(bean.getScopeType()).get(bean) != null))
{
- return (T) clientProxyProvider.getClientProxy(this, bean);
+ return clientProxyProvider.getClientProxy(this, bean);
}
else
{
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/activities/ActivitiesTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/activities/ActivitiesTest.java 2009-04-09 16:48:39 UTC (rev 2366)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/activities/ActivitiesTest.java 2009-04-09 18:41:41 UTC (rev 2367)
@@ -214,7 +214,7 @@
assert childActivity.resolveObservers(new NightTime()).iterator().next().equals(observer);
}
- @Test(groups="ri-broken")
+ @Test
@SpecAssertion(section="11.6", id="k")
public void testObserverBelongingToParentFiresForChildActivity()
{
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/dependent/DependentContextTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/dependent/DependentContextTest.java 2009-04-09 16:48:39 UTC (rev 2366)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/dependent/DependentContextTest.java 2009-04-09 18:41:41 UTC (rev 2367)
@@ -82,7 +82,7 @@
assert tarantula != tarantula2;
}
- @Test(groups = { "contexts", "disposalMethod", "ri-broken" })
+ @Test(groups = { "contexts", "disposalMethod" })
@SpecAssertion(section = "8.3", id = "d")
public void testInstanceUsedForDisposalMethodNotShared() throws Exception
{
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/passivating/Helsinki.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/passivating/Helsinki.java 2009-04-09 16:48:39 UTC (rev 2366)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/passivating/Helsinki.java 2009-04-09 18:41:41 UTC (rev 2367)
@@ -5,7 +5,7 @@
@Dependent
@Stateful
-class Helsinki implements HelsinkiLocal
+public class Helsinki implements HelsinkiLocal
{
}
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/passivating/PassivatingContextIntegrationTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/passivating/PassivatingContextIntegrationTest.java 2009-04-09 16:48:39 UTC (rev 2366)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/passivating/PassivatingContextIntegrationTest.java 2009-04-09 18:41:41 UTC (rev 2367)
@@ -25,7 +25,7 @@
assert false;
}
- @Test(groups = { "contexts", "passivation", "integration", "broken" }, expectedExceptions = IllegalProductException.class)
+ @Test(groups = { "contexts", "passivation", "integration", "ri-broken" }, expectedExceptions = IllegalProductException.class)
@SpecAssertion(section = "8.4", id = "p")
public void testDependentScopedProducerMethodReturnsNonSerializableObjectForInjectionIntoStatefulSessionBeanFails() throws SecurityException, NoSuchMethodException
{
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/passivating/PassivatingContextTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/passivating/PassivatingContextTest.java 2009-04-09 16:48:39 UTC (rev 2366)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/passivating/PassivatingContextTest.java 2009-04-09 18:41:41 UTC (rev 2367)
@@ -84,7 +84,7 @@
* @throws ClassNotFoundException
* @throws IOException
*/
- @Test(groups = { "contexts", "passivation", "incontainer-ri-broken" })
+ @Test(groups = { "contexts", "passivation" })
@SpecAssertion(section = "8.4", id = "j")
public void testDependentEJBsAreSerializable() throws IOException, ClassNotFoundException
{
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/EventTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/EventTest.java 2009-04-09 16:48:39 UTC (rev 2366)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/EventTest.java 2009-04-09 18:41:41 UTC (rev 2367)
@@ -196,47 +196,39 @@
assert observer != null;
}
- //TODO The exception is never thrown with parameterized types
- @Test(groups = { "ri-broken", "events" }, expectedExceptions = { IllegalArgumentException.class })
+ @Test(groups = { "events" }, expectedExceptions = { IllegalArgumentException.class })
@SpecAssertions( { @SpecAssertion(section = "7.3", id = "f") })
public void testManagerAddObserverWithEventTypeParametersFails()
{
- ArrayList<String> anEvent = new ArrayList<String>();
- Observer<ArrayList<String>> observer = new Observer<ArrayList<String>>() {
+ observerWithEventObjectContainsTypeVariables();
+ }
- public void notify(ArrayList<String> event)
+ private <E> void observerWithEventObjectContainsTypeVariables()
+ {
+ Observer<ArrayList<E>> observer = new Observer<ArrayList<E>>() {
+
+ public void notify(ArrayList<E> event)
{
}
};
- observerWithEventObjectContainsTypeVariables(anEvent, observer);
- }
-
- private <E> void observerWithEventObjectContainsTypeVariables(ArrayList<E> eventToFire, Observer<ArrayList<E>> observer)
- {
getCurrentManager().addObserver(observer, new TypeLiteral<ArrayList<E>>() {});
}
- @Test(groups = { "events", "broken" }, expectedExceptions = { IllegalArgumentException.class })
+ @Test(groups = { "events" }, expectedExceptions = { IllegalArgumentException.class })
@SpecAssertions( { @SpecAssertion(section = "7.3", id = "g") })
public void testManagerAddObserverWithEventTypeWildcardsFails()
{
-// ArrayList<?> anEvent = new ArrayList<String>();
-// Observer<ArrayList<String>> observer = new Observer<ArrayList<String>>() {
-//
-// public void notify(ArrayList<String> event)
-// {
-// }
-//
-// };
-// observerWithEventObjectContainsTypeWildcard(anEvent, observer);
+ Observer<ArrayList<?>> observer = new Observer<ArrayList<?>>() {
+
+ public void notify(ArrayList<?> event)
+ {
+ }
+
+ };
+ getCurrentManager().addObserver(observer, new TypeLiteral<ArrayList<?>>() {});
}
-// private void observerWithEventObjectContainsTypeWildcard(ArrayList<?> eventToFire, Observer<ArrayList<?>> observer)
-// {
-// getCurrentManager().addObserver(observer, new TypeLiteral<ArrayList<?>>() {});
-// }
-
@Test(groups = { "events", "underInvestigation" }, expectedExceptions = { IllegalArgumentException.class })
@SpecAssertions( { @SpecAssertion(section = "7.3", id = "h") })
public void testManagerRemoveObserverWithEventTypeParametersFails()
@@ -324,15 +316,6 @@
assert resolvedObservers.size() == 2;
}
-// @Test(groups = { "events", "broken" })
-// @SpecAssertions( { @SpecAssertion(section = "7.7.1", id = "b") } )
-// public void testEqualsUsedToCompareBindingTypes()
-// {
-// RoleBinding roleBinding = new RoleBinding("Admin");
-// getCurrentManager().resolveObservers(new MultiBindingType(), roleBinding, new TameAnnotationLiteral());
-// assert false;
-// }
-
@Test(groups = { "stub", "events", "webbeansxml" })
@SpecAssertions( {
@SpecAssertion(section = "7.5.3", id = "a"),
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/register/fires1/ImplicitEventBeanTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/register/fires1/ImplicitEventBeanTest.java 2009-04-09 16:48:39 UTC (rev 2366)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/register/fires1/ImplicitEventBeanTest.java 2009-04-09 18:41:41 UTC (rev 2367)
@@ -38,7 +38,7 @@
@BeansXml("beans.xml")
public class ImplicitEventBeanTest extends AbstractJSR299Test
{
- @Test(groups = { "events", "broken" })
+ @Test(groups = { "events", "ri-broken" })
@SpecAssertions( {
@SpecAssertion(section = "7.6", id = "b"),
@SpecAssertion(section = "7.6", id = "c"),
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/transactionalObservers/EventTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/transactionalObservers/EventTest.java 2009-04-09 16:48:39 UTC (rev 2366)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/event/transactionalObservers/EventTest.java 2009-04-09 18:41:41 UTC (rev 2367)
@@ -51,6 +51,7 @@
};
private PomeranianInterface dog = null;
+ @Override
public void beforeMethod()
{
super.beforeMethod();
@@ -173,14 +174,6 @@
assert false;
}
- @Test(groups = { "broken", "events", "integration" })
- @SpecAssertion(section = "7.5.8", id = "p")
- public void testTransactionalObserverThrownExceptionIsCaughtAndLogged()
- {
- // TODO There really is no way to verify that something is logged
- assert false;
- }
-
/**
* Otherwise, the observer method is called in the same transaction context,
* client security context and lifecycle contexts as the invocation of
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/implementation/enterprise/definition/EnterpriseBeanDefinitionTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/implementation/enterprise/definition/EnterpriseBeanDefinitionTest.java 2009-04-09 16:48:39 UTC (rev 2366)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/implementation/enterprise/definition/EnterpriseBeanDefinitionTest.java 2009-04-09 18:41:41 UTC (rev 2367)
@@ -96,7 +96,7 @@
* parameterized type, the set of bean types contains the bean class and all
* superclasses.
*/
- @Test(groups = { "enterpriseBeans", "broken" })
+ @Test(groups = { "enterpriseBeans", "ri-broken" })
@SpecAssertion(section = "3.3.3", id = "b")
public void testEnterpriseBeanWithLocalViewAndNotParameterizedTypeHasClassAndSuperclassesAsBeanTypes()
{
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/implementation/enterprise/definition/EnterpriseBeanViaXmlTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/implementation/enterprise/definition/EnterpriseBeanViaXmlTest.java 2009-04-09 16:48:39 UTC (rev 2366)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/implementation/enterprise/definition/EnterpriseBeanViaXmlTest.java 2009-04-09 18:41:41 UTC (rev 2367)
@@ -40,6 +40,7 @@
@Resource(source="ejb-jar.xml", destination="META-INF/ejb-jar.xml")
public class EnterpriseBeanViaXmlTest extends AbstractJSR299Test
{
+
//TODO Once EJBs can be deployed in a WAR (3.1), this test should work
@Test(groups = { "enterpriseBeans", "broken" })
@SpecAssertions( { @SpecAssertion(section = "3.2.1", id = "n") })
@@ -50,4 +51,5 @@
assert elephantBean.getTypes().contains(ElephantLocal.class);
assert !elephantBean.getTypes().contains(Elephant.class);
}
+
}
Deleted: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/implementation/simple/definition/Order.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/implementation/simple/definition/Order.java 2009-04-09 16:48:39 UTC (rev 2366)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/implementation/simple/definition/Order.java 2009-04-09 18:41:41 UTC (rev 2367)
@@ -1,11 +0,0 @@
-package org.jboss.jsr299.tck.tests.implementation.simple.definition;
-
-import javax.inject.Production;
-
- at Production
-class Order
-{
-
- public static boolean constructed = true;
-
-}
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/implementation/simple/definition/SimpleBeanDefinitionTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/implementation/simple/definition/SimpleBeanDefinitionTest.java 2009-04-09 16:48:39 UTC (rev 2366)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/implementation/simple/definition/SimpleBeanDefinitionTest.java 2009-04-09 18:41:41 UTC (rev 2367)
@@ -28,16 +28,6 @@
{
assert getCurrentManager().resolveByType(Cow_NotBean.class).size() == 0;
}
-
- @Test(groups = "ri-broken")
- @SpecAssertions({
- @SpecAssertion(section = "3.2", id = "cb"),
- @SpecAssertion(section = "3.2.1", id = "da")
- })
- public void testAbstractDecoratorClassDeclaredInJavaIsDiscovered()
- {
- assert getCurrentManager().resolveByType(AnimalDecorator.class).size() > 0;
- }
@Test(groups = "innerClass")
@SpecAssertions({
@@ -196,15 +186,6 @@
}
- @Test(groups="broken")
- @SpecAssertion(section = "3.2.6.1", id = "b")
- public void testImplicitConstructorUsed()
- {
- Order.constructed = false;
- getCurrentManager().getInstanceByType(Order.class);
- assert Order.constructed;
- }
-
@Test
@SpecAssertions({
@SpecAssertion(section = "3.2.5", id = "a"),
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/clientProxy/array/ArrayTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/clientProxy/array/ArrayTest.java 2009-04-09 16:48:39 UTC (rev 2366)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/clientProxy/array/ArrayTest.java 2009-04-09 18:41:41 UTC (rev 2367)
@@ -3,15 +3,16 @@
import javax.inject.UnproxyableDependencyException;
import org.hibernate.tck.annotations.SpecAssertion;
+import org.jboss.jsr299.tck.AbstractJSR299Test;
import org.jboss.testharness.impl.packaging.Artifact;
import org.jboss.testharness.impl.packaging.ExpectedDeploymentException;
import org.testng.annotations.Test;
@Artifact
@ExpectedDeploymentException(UnproxyableDependencyException.class)
-public class ArrayTest
+public class ArrayTest extends AbstractJSR299Test
{
- @Test(groups = "broken")
+ @Test(groups = "ri-broken")
@SpecAssertion(section = "5.4.1", id = "d")
public void testInjectionPointWithArrayType()
{
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/clientProxy/privateconstructor/PrivateConstructorTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/clientProxy/privateconstructor/PrivateConstructorTest.java 2009-04-09 16:48:39 UTC (rev 2366)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/lookup/clientProxy/privateconstructor/PrivateConstructorTest.java 2009-04-09 18:41:41 UTC (rev 2367)
@@ -13,7 +13,7 @@
@ExpectedDeploymentException(UnproxyableDependencyException.class)
public class PrivateConstructorTest extends AbstractJSR299Test
{
- @Test(groups = "ri-broken")
+ @Test
@SpecAssertion(section = "5.4.1", id = "a")
public void testClassWithPrivateConstructor()
{
Modified: tck/trunk/impl/src/main/resources/tck-audit.xml
===================================================================
--- tck/trunk/impl/src/main/resources/tck-audit.xml 2009-04-09 16:48:39 UTC (rev 2366)
+++ tck/trunk/impl/src/main/resources/tck-audit.xml 2009-04-09 18:41:41 UTC (rev 2367)
@@ -954,6 +954,7 @@
<assertion id="b">
<text>If a simple bean defined using annotations does not explicitly declare a constructor using |@Initializer|, the constructor that accepts no parameters is the bean constructor</text>
+ <note>Can't check implicit constructor</note>
</assertion>
<assertion id="c">
@@ -4276,8 +4277,9 @@
<text>Placeholder for path 4 etc</text>
</assertion>
- <assertion id="p">
+ <assertion id="p" testable="false">
<text>If the observer is a transactional or asynchronous observer method, any exception is caught and logged by the container</text>
+ <note>Cannot be tested as they are not under our control</note>
</assertion>
<assertion id="q">
More information about the weld-commits
mailing list