[webbeans-commits] Webbeans SVN: r1537 - in tck/trunk/impl/src/main: resources and 1 other directory.
webbeans-commits at lists.jboss.org
webbeans-commits at lists.jboss.org
Mon Feb 16 02:53:42 EST 2009
Author: shane.bryzak at jboss.com
Date: 2009-02-16 02:53:42 -0500 (Mon, 16 Feb 2009)
New Revision: 1537
Modified:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/context/passivating/PassivatingContextTest.java
tck/trunk/impl/src/main/resources/tck-audit.xml
Log:
finer grained assertions for 8.4, mapped passivation tests
Modified: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/context/passivating/PassivatingContextTest.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/context/passivating/PassivatingContextTest.java 2009-02-16 06:17:50 UTC (rev 1536)
+++ tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/unit/context/passivating/PassivatingContextTest.java 2009-02-16 07:53:42 UTC (rev 1537)
@@ -23,28 +23,15 @@
*/
public class PassivatingContextTest extends AbstractDeclarativeTest
{
-
- /**
- * Simple Web Beans are not required to be serializable. If a simple Web Bean
- * declares a passivating scope, and the implementation class is not
- * serializable, a DefinitionException is thrown by the Web Bean manager at
- * initialization time.
- */
@Test(groups = { "contexts", "passivation" }, expectedExceptions = DefinitionException.class)
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "b")
public void testSimpleWebBeanWithNonSerializableImplementationClassFails()
{
deployBeans(Hamina_Broken.class);
}
- /**
- * Simple Web Beans are not required to be serializable. If a simple Web Bean
- * declares a passivating scope, and the implementation class is not
- * serializable, a DefinitionException is thrown by the Web Bean manager at
- * initialization time.
- */
@Test(groups = { "contexts", "passivation" })
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "b")
public void testSimpleWebBeanWithSerializableImplementationClassOK()
{
deployBeans(Jyvaskyla.class);
@@ -59,19 +46,15 @@
getCurrentManager().getInstanceByType(NumberConsumer.class).ping();
}
- @Test @SpecAssertion(section="8.4", id = "unknown")
+ @Test @SpecAssertion(section="8.4", id = "outdated")
public void testInjectionOfDependentPrimitiveProductIntoNormalBean()
{
deployBeans(Generator.class, FooConsumer.class);
getCurrentManager().getInstanceByType(FooConsumer.class).ping();
}
- /**
- * the Web Bean declares a passivating scope type, and context passivation
- * occurs, or
- */
@Test(groups = { "contexts", "passivation" })
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "f")
public void testSimpleWebBeanDeclaringPassivatingScopeIsSerializedWhenContextIsPassivated() throws IOException, ClassNotFoundException
{
deployBeans(Kajaani.class);
@@ -94,14 +77,8 @@
return resurrected.toString().equals(instance.toString());
}
- /**
- * On the other hand, dependent objects (including interceptors and
- * decorators with scope @Dependent) of a stateful session bean or of a Web
- * Bean with a passivating scope must be serialized and deserialized along
- * with their owner
- */
@Test(groups = { "contexts", "passivation", "stub" }, expectedExceptions = UnserializableDependencyException.class)
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "j")
public void testDependentInterceptorsOfStatefulEnterpriseBeanMustBeSerializable()
{
//deployBeans(Kaarina_Broken.class);
@@ -115,35 +92,23 @@
* with their owner
*/
@Test(groups = { "contexts", "passivation", "stub" }, expectedExceptions = UnserializableDependencyException.class)
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "j")
public void testDependentDecoratorsOfStatefulEnterpriseBeanMustBeSerializable()
{
//deployBeans(Porvoo_Broken.class);
assert false;
}
- /**
- * On the other hand, dependent objects (including interceptors and
- * decorators with scope @Dependent) of a stateful session bean or of a Web
- * Bean with a passivating scope must be serialized and deserialized along
- * with their owner
- */
@Test(groups = { "contexts", "passivation", "stub" }, expectedExceptions = UnserializableDependencyException.class)
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "k")
public void testDependentInterceptorsOfWebBeanWithPassivatingScopeMustBeSerializable()
{
//deployBeans(Kotka_Broken.class);
assert false;
}
- /**
- * On the other hand, dependent objects (including interceptors and
- * decorators with scope @Dependent) of a stateful session bean or of a Web
- * Bean with a passivating scope must be serialized and deserialized along
- * with their owner
- */
@Test(groups = { "contexts", "passivation", "stub" }, expectedExceptions = UnserializableDependencyException.class)
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "k")
public void testDependentDecoratorsOfWebBeansWithPassivatingScopeMustBeSerializable()
{
//deployBeans(Raisio_Broken.class);
@@ -151,14 +116,11 @@
}
/**
- * EJB local objects are serializable. Therefore, any reference to an
- * enterprise Web Bean of scope @Dependent is serializable.
- *
* @throws ClassNotFoundException
* @throws IOException
*/
@Test(groups = { "contexts", "passivation" })
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "j")
public void testDependentEJBsAreSerializable() throws IOException, ClassNotFoundException
{
deployBeans(Vaasa.class, Helsinki.class);
@@ -167,50 +129,23 @@
assert testSerialize(vaasaBeans.iterator().next());
}
- /**
- * If a simple Web Bean of scope @Dependent and a non-serializable
- * implementation class is injected into a stateful session bean, into a
- * non-transient field, Web Bean constructor parameter or initializer method
- * parameter of a Web Bean which declares a passivating scope type, or into a
- * parameter of a producer method which declares a passivating scope type, an
- * UnserializableDependencyException must be thrown by the Web Bean manager
- * at initialization time.
- */
@Test(groups = { "contexts", "passivation" }, expectedExceptions = UnserializableDependencyException.class)
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "k")
public void testSimpleDependentWebBeanWithNonSerializableImplementationInjectedIntoStatefulSessionBeanFails()
{
deployBeans(Violation.class, Espoo_Broken.class);
getCurrentManager().getInstanceByType(Espoo_Broken.class);
}
- /**
- * If a simple Web Bean of scope @Dependent and a non-serializable
- * implementation class is injected into a stateful session bean, into a
- * non-transient field, Web Bean constructor parameter or initializer method
- * parameter of a Web Bean which declares a passivating scope type, or into a
- * parameter of a producer method which declares a passivating scope type, an
- * UnserializableDependencyException must be thrown by the Web Bean manager
- * at initialization time.
- */
@Test(groups = { "contexts", "passivation" }, expectedExceptions = UnserializableDependencyException.class)
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "l")
public void testSimpleDependentWebBeanWithNonSerializableImplementationInjectedIntoNonTransientFieldOfWebBeanWithPassivatingScopeFails()
{
deployBeans(Vantaa_Broken.class, Violation.class);
}
- /**
- * If a simple Web Bean of scope @Dependent and a non-serializable
- * implementation class is injected into a stateful session bean, into a
- * non-transient field, Web Bean constructor parameter or initializer method
- * parameter of a Web Bean which declares a passivating scope type, or into a
- * parameter of a producer method which declares a passivating scope type, an
- * UnserializableDependencyException must be thrown by the Web Bean manager
- * at initialization time.
- */
@Test(groups = { "contexts", "passivation" })
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "l")
public void testSimpleDependentWebBeanWithNonSerializableImplementationInjectedIntoTransientFieldOK()
{
deployBeans(Joensuu.class, Violation.class);
@@ -218,80 +153,37 @@
assert !beans.isEmpty();
}
- /**
- * If a simple Web Bean of scope @Dependent and a non-serializable
- * implementation class is injected into a stateful session bean, into a
- * non-transient field, Web Bean constructor parameter or initializer method
- * parameter of a Web Bean which declares a passivating scope type, or into a
- * parameter of a producer method which declares a passivating scope type, an
- * UnserializableDependencyException must be thrown by the Web Bean manager
- * at initialization time.
- */
@Test(groups = { "contexts", "passivation" }, expectedExceptions = UnserializableDependencyException.class)
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "m")
public void testSimpleDependentWebBeanWithNonSerializableImplementationInjectedIntoConstructorParameterOfWebBeanWithPassivatingScopeFails()
{
deployBeans(Loviisa_Broken.class, Violation.class);
}
- /**
- * If a simple Web Bean of scope @Dependent and a non-serializable
- * implementation class is injected into a stateful session bean, into a
- * non-transient field, Web Bean constructor parameter or initializer method
- * parameter of a Web Bean which declares a passivating scope type, or into a
- * parameter of a producer method which declares a passivating scope type, an
- * UnserializableDependencyException must be thrown by the Web Bean manager
- * at initialization time.
- */
@Test(groups = { "contexts", "passivation" }, expectedExceptions = UnserializableDependencyException.class)
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "n")
public void testSimpleDependentWebBeanWithNonSerializableImplementationInjectedIntoInitializerParameterOfWebBeanWithPassivatingScopeFails()
{
deployBeans(Forssa_Broken.class, Violation.class);
}
- /**
- * If a simple Web Bean of scope @Dependent and a non-serializable
- * implementation class is injected into a stateful session bean, into a
- * non-transient field, Web Bean constructor parameter or initializer method
- * parameter of a Web Bean which declares a passivating scope type, or into a
- * parameter of a producer method which declares a passivating scope type, an
- * UnserializableDependencyException must be thrown by the Web Bean manager
- * at initialization time.
- */
@Test(groups = { "contexts", "passivation" }, expectedExceptions = UnserializableDependencyException.class)
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "o")
public void testSimpleDependentWebBeanWithNonSerializableImplementationInjectedIntoProducerMethodParameterWithPassivatingScopeFails()
{
deployBeans(Peraseinajoki.class, Violation.class, Violation2.class);
}
- /**
- * If a producer method or field of scope @Dependent returns a
- * non-serializable object for injection into a stateful session bean, into a
- * non-transient field, Web Bean constructor parameter or initializer method
- * parameter of a Web Bean which declares a passivating scope type, or into a
- * parameter of a producer method which declares a passivating scope type, an
- * IllegalProductException is thrown by the Web Bean manager.
- */
@Test(groups = { "contexts", "passivation" }, expectedExceptions = IllegalProductException.class)
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "q")
public void testDependentScopedProducerMethodReturnsNonSerializableObjectForInjectionIntoNonTransientFieldOfWebBeanWithPassivatingScopeFails()
{
deployBeans(CityProducer2.class, Nokia_Broken.class);
getCurrentManager().getInstanceByType(Nokia_Broken.class).ping();
}
- /**
- * If a producer method or field of scope @Dependent returns a
- * non-serializable object for injection into a stateful session bean, into a
- * non-transient field, Web Bean constructor parameter or initializer method
- * parameter of a Web Bean which declares a passivating scope type, or into a
- * parameter of a producer method which declares a passivating scope type, an
- * IllegalProductException is thrown by the Web Bean manager.
- */
@Test(groups = { "contexts", "passivation" })
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "q")
public void testDependentScopedProducerMethodReturnsNonSerializableObjectForInjectionIntoTransientFieldOfWebBeanWithPassivatingScopeOK()
{
deployBeans(CityProducer2.class, Hyvinkaa.class);
@@ -299,128 +191,64 @@
assert !beans.isEmpty();
}
- /**
- * If a producer method or field of scope @Dependent returns a
- * non-serializable object for injection into a stateful session bean, into a
- * non-transient field, Web Bean constructor parameter or initializer method
- * parameter of a Web Bean which declares a passivating scope type, or into a
- * parameter of a producer method which declares a passivating scope type, an
- * IllegalProductException is thrown by the Web Bean manager.
- */
@Test(groups = { "contexts", "passivation" }, expectedExceptions = IllegalProductException.class)
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "r")
public void testDependentScopedProducerMethodReturnsNonSerializableObjectForInjectionIntoConstructorParameterOfWebBeanWithPassivatingScopeFails()
{
deployBeans(CityProducer2.class, Loviisa_Broken.class);
getCurrentManager().getInstanceByType(Loviisa_Broken.class).ping();
}
- /**
- * If a producer method or field of scope @Dependent returns a
- * non-serializable object for injection into a stateful session bean, into a
- * non-transient field, Web Bean constructor parameter or initializer method
- * parameter of a Web Bean which declares a passivating scope type, or into a
- * parameter of a producer method which declares a passivating scope type, an
- * IllegalProductException is thrown by the Web Bean manager.
- */
@Test(groups = { "contexts", "passivation" }, expectedExceptions = IllegalProductException.class)
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "s")
public void testDependentScopedProducerMethodReturnsNonSerializableObjectForInjectionIntoInitializerParameterOfWebBeanWithPassivatingScopeFails()
{
deployBeans(CityProducer2.class, Kuopio_Broken.class);
getCurrentManager().getInstanceByType(Kuopio_Broken.class).ping();
}
- /**
- * If a producer method or field of scope @Dependent returns a
- * non-serializable object for injection into a stateful session bean, into a
- * non-transient field, Web Bean constructor parameter or initializer method
- * parameter of a Web Bean which declares a passivating scope type, or into a
- * parameter of a producer method which declares a passivating scope type, an
- * IllegalProductException is thrown by the Web Bean manager.
- */
@Test(groups = { "contexts", "passivation" }, expectedExceptions = IllegalProductException.class)
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "t")
public void testDependentScopedProducerMethodReturnsNonSerializableObjectForInjectionIntoProducerMethodParameterWithPassivatingScopeFails()
{
deployBeans(CityProducer2.class, Jamsa_Broken.class);
getCurrentManager().getInstanceByType(Jamsa_Broken.class).ping();
}
- /**
- * If a producer method or field of scope @Dependent returns a
- * non-serializable object for injection into a stateful session bean, into a
- * non-transient field, Web Bean constructor parameter or initializer method
- * parameter of a Web Bean which declares a passivating scope type, or into a
- * parameter of a producer method which declares a passivating scope type, an
- * IllegalProductException is thrown by the Web Bean manager.
- */
@Test(groups = { "contexts", "passivation" }, expectedExceptions = IllegalProductException.class)
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "q")
public void testDependentScopedProducerFieldReturnsNonSerializableObjectForInjectionIntoNonTransientFieldOfWebBeanWithPassivatingScopeFails()
{
deployBeans(CityProducer.class, Uusikaupunki_Broken.class);
getCurrentManager().getInstanceByType(Uusikaupunki_Broken.class).ping();
}
- /**
- * If a producer method or field of scope @Dependent returns a
- * non-serializable object for injection into a stateful session bean, into a
- * non-transient field, Web Bean constructor parameter or initializer method
- * parameter of a Web Bean which declares a passivating scope type, or into a
- * parameter of a producer method which declares a passivating scope type, an
- * IllegalProductException is thrown by the Web Bean manager.
- */
@Test(groups = { "contexts", "passivation" })
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "q")
public void testDependentScopedProducerFieldReturnsNonSerializableObjectForInjectionIntoTransientFieldOfWebBeanWithPassivatingScopeOK()
{
deployBeans(CityProducer.class, Salo_Broken.class);
getCurrentManager().getInstanceByType(Salo_Broken.class).ping();
}
- /**
- * If a producer method or field of scope @Dependent returns a
- * non-serializable object for injection into a stateful session bean, into a
- * non-transient field, Web Bean constructor parameter or initializer method
- * parameter of a Web Bean which declares a passivating scope type, or into a
- * parameter of a producer method which declares a passivating scope type, an
- * IllegalProductException is thrown by the Web Bean manager.
- */
@Test(groups = { "contexts", "passivation" }, expectedExceptions = IllegalProductException.class)
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "r")
public void testDependentScopedProducerFieldReturnsNonSerializableObjectForInjectionIntoConstructorParameterOfWebBeanWithPassivatingScopeFails()
{
deployBeans(CityProducer.class, Loviisa_Broken.class);
getCurrentManager().getInstanceByType(Loviisa_Broken.class).ping();
}
- /**
- * If a producer method or field of scope @Dependent returns a
- * non-serializable object for injection into a stateful session bean, into a
- * non-transient field, Web Bean constructor parameter or initializer method
- * parameter of a Web Bean which declares a passivating scope type, or into a
- * parameter of a producer method which declares a passivating scope type, an
- * IllegalProductException is thrown by the Web Bean manager.
- */
@Test(groups = { "contexts", "passivation" }, expectedExceptions = IllegalProductException.class)
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "s")
public void testDependentScopedProducerFieldReturnsNonSerializableObjectForInjectionIntoInitializerParameterOfWebBeanWithPassivatingScopeFails()
{
deployBeans(CityProducer.class, Mikkeli_Broken.class);
getCurrentManager().getInstanceByType(Mikkeli_Broken.class).ping();
}
- /**
- * If a producer method or field of scope @Dependent returns a
- * non-serializable object for injection into a stateful session bean, into a
- * non-transient field, Web Bean constructor parameter or initializer method
- * parameter of a Web Bean which declares a passivating scope type, or into a
- * parameter of a producer method which declares a passivating scope type, an
- * IllegalProductException is thrown by the Web Bean manager.
- */
@Test(groups = { "contexts", "passivation" }, expectedExceptions = IllegalProductException.class)
- @SpecAssertion(section = "8.4", id = "unknown")
+ @SpecAssertion(section = "8.4", id = "t")
public void testDependentScopedProducerFieldReturnsNonSerializableObjectForInjectionIntoProducerMethodParameterWithPassivatingScopeFails()
{
// TODO Not quite sure what this test is doing
Modified: tck/trunk/impl/src/main/resources/tck-audit.xml
===================================================================
--- tck/trunk/impl/src/main/resources/tck-audit.xml 2009-02-16 06:17:50 UTC (rev 1536)
+++ tck/trunk/impl/src/main/resources/tck-audit.xml 2009-02-16 07:53:42 UTC (rev 1537)
@@ -2222,23 +2222,54 @@
</assertion>
<assertion id="j">
- <text>Dependent objects (including interceptors and decorators with scope @Dependent) of a stateful session bean or of a bean with a passivating scope must be serialized and deserialized along with their owner - EJB local objects are serializable. Therefore, any reference to a session bean of scope @Dependent is serializable</text>
+ <text>EJB local objects are serializable, therefore, any reference to a session bean of scope @Dependent is serializable</text>
</assertion>
<assertion id="k">
- <text>Dependent objects (including interceptors and decorators with scope @Dependent) of a stateful session bean or of a bean with a passivating scope must be serialized and deserialized along with their owner - A simple bean of scope @Dependent may or may not be serializable. If a simple bean of scope @Dependent and a nonserializable bean class is injected into a stateful session bean, into a non-transient field, bean constructor parameter or initializer method parameter of a bean which declares a passivating scope, or into a parameter of a producer method
-which declares a passivating scope, an UnserializableDependencyException must be thrown by the container at deployment time</text>
+ <text>If a simple bean of scope @Dependent and a nonserializable bean class is injected into a stateful session bean an UnserializableDependencyException must be thrown by the container at deployment time</text>
</assertion>
<assertion id="l">
- <text>Dependent objects (including interceptors and decorators with scope @Dependent) of a stateful session bean or of a bean with a passivating scope must be serialized and deserialized along with their owner - If a producer method or field of scope @Dependent returns a non-serializable object for injection into a stateful session bean, into a non-transient field, bean constructor parameter or initializer method parameter of a bean which declares a passivating scope, or into a parameter of a producer method which declares a passivating scope, an IllegalProductException is thrown by the container</text>
+ <text>If a simple bean of scope @Dependent and a nonserializable bean class is injected into a non-transient field an UnserializableDependencyException must be thrown by the container at deployment time</text>
</assertion>
<assertion id="m">
- <text>Dependent objects (including interceptors and decorators with scope @Dependent) of a stateful session bean or of a bean with a passivating scope must be serialized and deserialized along with their owner - The container must guarantee that JMS resource proxy objects are serializable</text>
+ <text>If a simple bean of scope @Dependent and a nonserializable bean class is injected into a bean constructor parameter of a bean which declares a passivating scope, an UnserializableDependencyException must be thrown by the container at deployment time</text>
</assertion>
<assertion id="n">
+ <text>If a simple bean of scope @Dependent and a nonserializable bean class is injected into an initializer method parameter of a bean which declares a passivating scope, an UnserializableDependencyException must be thrown by the container at deployment time</text>
+ </assertion>
+
+ <assertion id="o">
+ <text>If a simple bean of scope @Dependent and a nonserializable bean class is injected into a parameter of a producer method which declares a passivating scope, an UnserializableDependencyException must be thrown by the container at deployment time</text>
+ </assertion>
+
+ <assertion id="p">
+ <text>If a producer method or field of scope @Dependent returns a non-serializable object for injection into a stateful session bean, an IllegalProductException is thrown by the container</text>
+ </assertion>
+
+ <assertion id="q">
+ <text>If a producer method or field of scope @Dependent returns a non-serializable object for injection into a non-transient field an IllegalProductException is thrown by the container</text>
+ </assertion>
+
+ <assertion id="r">
+ <text>If a producer method or field of scope @Dependent returns a non-serializable object for injection into a bean constructor parameter of a bean which declares a passivating scope, an IllegalProductException is thrown by the container</text>
+ </assertion>
+
+ <assertion id="s">
+ <text>If a producer method or field of scope @Dependent returns a non-serializable object for injection into an initializer method parameter of a bean which declares a passivating scope, an IllegalProductException is thrown by the container</text>
+ </assertion>
+
+ <assertion id="t">
+ <text>If a producer method or field of scope @Dependent returns a non-serializable object for injection into a parameter of a producer method which declares a passivating scope, an IllegalProductException is thrown by the container</text>
+ </assertion>
+
+ <assertion id="u">
+ <text>The container must guarantee that JMS resource proxy objects are serializable</text>
+ </assertion>
+
+ <assertion id="v">
<text>The method Bean.isSerializable() may be used to detect if a bean is serializable</text>
</assertion>
</section>
More information about the weld-commits
mailing list