Author: dan.j.allen
Date: 2009-07-17 12:46:21 -0400 (Fri, 17 Jul 2009)
New Revision: 3077
Added:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/AnotherSessionBean.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/ContextExtensions.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/DummyContext.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/DummyScoped.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/GetFromContextualTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/Unregistered.java
Removed:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/GetTest.java
Modified:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/MockCreationalContext.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/ContextTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/DestroyedInstanceReturnedByGetTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/GetOnInactiveContextTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/GetWithNoCreationalContextTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/InactiveContextTest.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/MySessionBean.java
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/NormalContextTest.java
Log:
update to 20090625 spec assertions
Modified:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/MockCreationalContext.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/MockCreationalContext.java 2009-07-17
16:44:57 UTC (rev 3076)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/impl/MockCreationalContext.java 2009-07-17
16:46:21 UTC (rev 3077)
@@ -7,6 +7,7 @@
private static Object lastBeanPushed = null;
private static boolean pushCalled = false;
+ private static boolean releaseCalled = false;
public void push(T incompleteInstance)
{
@@ -34,15 +35,21 @@
MockCreationalContext.pushCalled = pushCalled;
}
+ public static boolean isReleaseCalled()
+ {
+ return releaseCalled;
+ }
+
public static void reset()
{
lastBeanPushed = null;
pushCalled = false;
+ releaseCalled = false;
}
public void release()
{
-
+ releaseCalled = true;
}
Added:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/AnotherSessionBean.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/AnotherSessionBean.java
(rev 0)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/AnotherSessionBean.java 2009-07-17
16:46:21 UTC (rev 3077)
@@ -0,0 +1,12 @@
+package org.jboss.jsr299.tck.tests.context;
+
+import java.io.Serializable;
+
+import javax.enterprise.context.SessionScoped;
+
+@SessionScoped class AnotherSessionBean implements Serializable
+{
+ private static final long serialVersionUID = 1L;
+
+ public void ping() {}
+}
Added:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/ContextExtensions.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/ContextExtensions.java
(rev 0)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/ContextExtensions.java 2009-07-17
16:46:21 UTC (rev 3077)
@@ -0,0 +1,13 @@
+package org.jboss.jsr299.tck.tests.context;
+
+import javax.enterprise.event.Observes;
+import javax.enterprise.inject.spi.AfterBeanDiscovery;
+
+class ContextExtensions
+{
+ public void addNewContexts(@Observes AfterBeanDiscovery event)
+ {
+ event.addContext(new DummyContext());
+ event.addContext(new DummyContext());
+ }
+}
Modified:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/ContextTest.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/ContextTest.java 2009-07-17
16:44:57 UTC (rev 3076)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/ContextTest.java 2009-07-17
16:46:21 UTC (rev 3077)
@@ -1,15 +1,11 @@
package org.jboss.jsr299.tck.tests.context;
-import java.lang.annotation.Annotation;
-
import javax.enterprise.context.ApplicationScoped;
import javax.enterprise.context.ContextNotActiveException;
import javax.enterprise.context.Dependent;
import javax.enterprise.context.RequestScoped;
import javax.enterprise.context.SessionScoped;
import javax.enterprise.context.spi.Context;
-import javax.enterprise.context.spi.Contextual;
-import javax.enterprise.context.spi.CreationalContext;
import org.hibernate.tck.annotations.SpecAssertion;
import org.hibernate.tck.annotations.SpecAssertions;
@@ -18,59 +14,16 @@
import org.testng.annotations.Test;
/**
- * Spec version: 20090519
+ * Spec version: 20090625
*/
@Artifact
public class ContextTest extends AbstractJSR299Test
{
-
- private @interface Dummy
- {
-
- }
-
- private @interface Unregistered
- {
-
- }
-
- private static class DummyContext implements Context
- {
-
- public <T> T get(Contextual<T> bean, CreationalContext<T>
creationalContext)
- {
- throw new UnsupportedOperationException();
- }
-
- public <T> T get(Contextual<T> contextual)
- {
- return get(contextual, null);
- }
-
- public Class<? extends Annotation> getScopeType()
- {
- return Dummy.class;
- }
-
- public boolean isActive()
- {
- return true;
- }
- }
-
@Test(expectedExceptions = { IllegalStateException.class }, groups = {
"manager" })
@SpecAssertion(section = "6.5.1", id = "b")
public void testGetContextWithTooManyActiveContextsFails()
{
- Context firstContext = new DummyContext()
- {
- };
- Context secondContext = new DummyContext()
- {
- };
- getCurrentManager().addContext(firstContext);
- getCurrentManager().addContext(secondContext);
- getCurrentManager().getContext(Dummy.class);
+ getCurrentManager().getContext(DummyScoped.class);
}
@Test(expectedExceptions = { ContextNotActiveException.class }, groups = {
"manager" })
@@ -82,11 +35,11 @@
@Test(groups = { "contexts" })
@SpecAssertions({
- @SpecAssertion(section = "6.2", id = "aa"),
- @SpecAssertion(section = "2.4.1", id = "a"),
- @SpecAssertion(section = "2.4.1", id = "b"),
- @SpecAssertion(section = "2.4.1", id = "c"),
- @SpecAssertion(section = "11.3.18", id = "a")
+ @SpecAssertion(section = "2.4.1", id = "aa"),
+ @SpecAssertion(section = "2.4.1", id = "ab"),
+ @SpecAssertion(section = "2.4.1", id = "ac"),
+ @SpecAssertion(section = "2.4.1", id = "ca"),
+ @SpecAssertion(section = "11.3.15", id = "a")
})
public void testBuiltInContexts()
{
@@ -98,5 +51,6 @@
assert context != null;
context = getCurrentManager().getContext(ApplicationScoped.class);
assert context != null;
+ // QUESTION why can't we grab the ConversionScoped context here?
}
}
Modified:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/DestroyedInstanceReturnedByGetTest.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/DestroyedInstanceReturnedByGetTest.java 2009-07-17
16:44:57 UTC (rev 3076)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/DestroyedInstanceReturnedByGetTest.java 2009-07-17
16:46:21 UTC (rev 3077)
@@ -12,9 +12,7 @@
import org.testng.annotations.Test;
/**
- *
- * Spec version: 20090519
- *
+ * Spec version: 20090625
*/
@Artifact
public class DestroyedInstanceReturnedByGetTest extends AbstractJSR299Test
@@ -22,7 +20,7 @@
@Test(groups = { "contexts" })
@SpecAssertions({
@SpecAssertion(section = "6.2", id = "q"),
- @SpecAssertion(section = "11.1", id = "a")
+ @SpecAssertion(section = "11.1", id = "aa")
})
public void testDestroyedInstanceMustNotBeReturnedByGet()
{
@@ -32,6 +30,7 @@
assert beanInstance != null;
destroyContext(getCurrentManager().getContext(SessionScoped.class));
setContextActive(getCurrentManager().getContext(SessionScoped.class));
+
beanInstance =
getCurrentManager().getContext(SessionScoped.class).get(mySessionBean);
assert beanInstance == null;
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/DummyContext.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/DummyContext.java
(rev 0)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/DummyContext.java 2009-07-17
16:46:21 UTC (rev 3077)
@@ -0,0 +1,30 @@
+package org.jboss.jsr299.tck.tests.context;
+
+import java.lang.annotation.Annotation;
+
+import javax.enterprise.context.spi.Context;
+import javax.enterprise.context.spi.Contextual;
+import javax.enterprise.context.spi.CreationalContext;
+
+class DummyContext implements Context
+{
+ public <T> T get(Contextual<T> bean, CreationalContext<T>
creationalContext)
+ {
+ throw new UnsupportedOperationException();
+ }
+
+ public <T> T get(Contextual<T> contextual)
+ {
+ return get(contextual, null);
+ }
+
+ public Class<? extends Annotation> getScopeType()
+ {
+ return DummyScoped.class;
+ }
+
+ public boolean isActive()
+ {
+ return true;
+ }
+}
\ No newline at end of file
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/DummyScoped.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/DummyScoped.java
(rev 0)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/DummyScoped.java 2009-07-17
16:46:21 UTC (rev 3077)
@@ -0,0 +1,5 @@
+package org.jboss.jsr299.tck.tests.context;
+
+@interface DummyScoped
+{
+}
Copied:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/GetFromContextualTest.java
(from rev 3070,
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/GetTest.java)
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/GetFromContextualTest.java
(rev 0)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/GetFromContextualTest.java 2009-07-17
16:46:21 UTC (rev 3077)
@@ -0,0 +1,42 @@
+package org.jboss.jsr299.tck.tests.context;
+
+import javax.enterprise.context.ApplicationScoped;
+import javax.enterprise.context.SessionScoped;
+import javax.enterprise.context.spi.Contextual;
+import javax.enterprise.context.spi.CreationalContext;
+
+import org.hibernate.tck.annotations.SpecAssertion;
+import org.hibernate.tck.annotations.SpecAssertions;
+import org.jboss.jsr299.tck.AbstractJSR299Test;
+import org.jboss.jsr299.tck.impl.MockCreationalContext;
+import org.jboss.testharness.impl.packaging.Artifact;
+import org.testng.annotations.Test;
+
+/**
+ * Spec version: 20090625
+ */
+@Artifact
+public class GetFromContextualTest extends AbstractJSR299Test
+{
+ @Test(groups = { "contexts" })
+ @SpecAssertions({
+ @SpecAssertion(section = "6.2", id = "o"),
+ @SpecAssertion(section = "6.2", id = "na")
+ })
+ public void testGetMayNotCreateNewInstanceUnlessCreationalContextGiven()
+ {
+ Contextual<MySessionBean> mySessionBean =
getBeans(MySessionBean.class).iterator().next();
+ assert getCurrentManager().getContext(SessionScoped.class).get(mySessionBean) ==
null;
+
+ Contextual<MyApplicationBean> myApplicationBean =
getBeans(MyApplicationBean.class).iterator().next();
+ assert
getCurrentManager().getContext(ApplicationScoped.class).get(myApplicationBean) == null;
+
+ // Now try same operation with a CreationalContext
+ CreationalContext<MySessionBean> myCreationalContext = new
MockCreationalContext<MySessionBean>();
+ assert getCurrentManager().getContext(SessionScoped.class).get(mySessionBean,
myCreationalContext) != null;
+
+ CreationalContext<MyApplicationBean> myOtherCreationalContext = new
MockCreationalContext<MyApplicationBean>();
+ assert
getCurrentManager().getContext(ApplicationScoped.class).get(myApplicationBean,
myOtherCreationalContext) != null;
+ }
+
+}
Modified:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/GetOnInactiveContextTest.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/GetOnInactiveContextTest.java 2009-07-17
16:44:57 UTC (rev 3076)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/GetOnInactiveContextTest.java 2009-07-17
16:46:21 UTC (rev 3077)
@@ -11,7 +11,7 @@
import org.testng.annotations.Test;
/**
- * Spec version: 20090519
+ * Spec version: 20090625
*/
@Artifact
public class GetOnInactiveContextTest extends AbstractJSR299Test
Deleted: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/GetTest.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/GetTest.java 2009-07-17
16:44:57 UTC (rev 3076)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/GetTest.java 2009-07-17
16:46:21 UTC (rev 3077)
@@ -1,40 +0,0 @@
-package org.jboss.jsr299.tck.tests.context;
-
-import javax.enterprise.context.ApplicationScoped;
-import javax.enterprise.context.SessionScoped;
-import javax.enterprise.context.spi.Contextual;
-import javax.enterprise.context.spi.CreationalContext;
-
-import org.hibernate.tck.annotations.SpecAssertion;
-import org.jboss.jsr299.tck.AbstractJSR299Test;
-import org.jboss.jsr299.tck.impl.MockCreationalContext;
-import org.jboss.testharness.impl.packaging.Artifact;
-import org.testng.annotations.Test;
-
-/**
- *
- * Spec version: 20090519
- *
- */
-@Artifact
-public class GetTest extends AbstractJSR299Test
-{
- @Test(groups = { "contexts" })
- @SpecAssertion(section = "6.2", id = "o")
- public void testGetMayNotCreateNewInstanceUnlessCreationalContextGiven()
- {
- Contextual<MySessionBean> mySessionBean =
getBeans(MySessionBean.class).iterator().next();
- assert getCurrentManager().getContext(SessionScoped.class).get(mySessionBean) ==
null;
-
- Contextual<MyApplicationBean> myApplicationBean =
getBeans(MyApplicationBean.class).iterator().next();
- assert
getCurrentManager().getContext(ApplicationScoped.class).get(myApplicationBean) == null;
-
- // Now try same operation with a CreationalContext
- CreationalContext<MySessionBean> myCreationalContext = new
MockCreationalContext<MySessionBean>();
- assert getCurrentManager().getContext(SessionScoped.class).get(mySessionBean,
myCreationalContext) != null;
-
- CreationalContext<MyApplicationBean> myOtherCreationalContext = new
MockCreationalContext<MyApplicationBean>();
- assert
getCurrentManager().getContext(ApplicationScoped.class).get(myApplicationBean,
myOtherCreationalContext) != null;
- }
-
-}
Modified:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/GetWithNoCreationalContextTest.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/GetWithNoCreationalContextTest.java 2009-07-17
16:44:57 UTC (rev 3076)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/GetWithNoCreationalContextTest.java 2009-07-17
16:46:21 UTC (rev 3077)
@@ -10,9 +10,7 @@
import org.testng.annotations.Test;
/**
- *
- * Spec version: 20090519
- *
+ * Spec version: 20090625
*/
@Artifact
public class GetWithNoCreationalContextTest extends AbstractJSR299Test
Modified:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/InactiveContextTest.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/InactiveContextTest.java 2009-07-17
16:44:57 UTC (rev 3076)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/InactiveContextTest.java 2009-07-17
16:46:21 UTC (rev 3077)
@@ -9,15 +9,12 @@
import org.testng.annotations.Test;
/**
- *
* Spec version: 20090519
- *
*/
@Artifact
public class InactiveContextTest extends AbstractJSR299Test
{
-
@Test(expectedExceptions = { ContextNotActiveException.class }, groups = {
"manager" })
@SpecAssertion(section = "6.2", id = "m")
public void testGetContextWithNoActiveContextsFails()
Modified:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/MySessionBean.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/MySessionBean.java 2009-07-17
16:44:57 UTC (rev 3076)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/MySessionBean.java 2009-07-17
16:46:21 UTC (rev 3077)
@@ -23,7 +23,6 @@
public void ping()
{
-
}
}
Modified:
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/NormalContextTest.java
===================================================================
---
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/NormalContextTest.java 2009-07-17
16:44:57 UTC (rev 3076)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/NormalContextTest.java 2009-07-17
16:46:21 UTC (rev 3077)
@@ -9,13 +9,10 @@
import org.hibernate.tck.annotations.SpecAssertions;
import org.jboss.jsr299.tck.AbstractJSR299Test;
import org.jboss.jsr299.tck.impl.MockCreationalContext;
-import org.jboss.jsr299.tck.tests.context.dependent.ejb.FoxRunLocal;
import org.jboss.testharness.impl.packaging.Artifact;
import org.testng.annotations.Test;
/**
- * This class tests a basic context against section 8 of the specification
- *
* Spec version: 20090519
*
* @author Nicklas Karlsson
@@ -27,9 +24,10 @@
{
@Test(groups = { "contexts" })
- @SpecAssertions( {
- @SpecAssertion(section = "6.2", id = "j"),
- @SpecAssertion(section = "6.3", id = "c")
+ @SpecAssertions( {
+ @SpecAssertion(section = "6.2", id = "j"),
+ @SpecAssertion(section = "6.2", id = "l"),
+ @SpecAssertion(section = "6.3", id = "c")
} )
public void testGetReturnsExistingInstance()
{
@@ -39,10 +37,14 @@
first.setId(10);
MySessionBean second =
getCurrentManager().getContext(SessionScoped.class).get(mySessionBean,
creationalContext);
assert second.getId() == 10;
+ MySessionBean third =
getCurrentManager().getContext(SessionScoped.class).get(mySessionBean);
+ assert third.getId() == 10;
+ MySessionBean fourth =
getCurrentManager().getContext(SessionScoped.class).get(mySessionBean,
getCurrentManager().createCreationalContext(mySessionBean));
+ assert fourth.getId() == 10;
}
@Test(groups = { "contexts" })
- @SpecAssertions( {
+ @SpecAssertions( {
@SpecAssertion(section = "6.2", id = "l")
} )
public void testGetWithCreationalContextReturnsNewInstance()
@@ -73,7 +75,7 @@
}
@Test(groups = { "contexts" })
- @SpecAssertions( {
+ @SpecAssertions( {
@SpecAssertion(section = "6.2", id = "p"),
@SpecAssertion(section = "6.3", id = "d")
})
@@ -94,8 +96,26 @@
assert bean.isDestroyCalled();
}
+ @Test
+ // This assertion is very weak and vague
+ @SpecAssertion(section = "6.2", id = "r")
+ public void testDestroyForSameCreationalContextOnly()
+ {
+ Context sessionContext = getCurrentManager().getContext(SessionScoped.class);
+ Bean<AnotherSessionBean> sessionBean =
getBeans(AnotherSessionBean.class).iterator().next();
+ MockCreationalContext.reset();
+ CreationalContext<AnotherSessionBean> creationalContext = new
MockCreationalContext<AnotherSessionBean>();
+ AnotherSessionBean instance = sessionContext.get(sessionBean, creationalContext);
+ instance.ping();
+
+ sessionBean.destroy(instance,
getCurrentManager().createCreationalContext(sessionBean));
+ assert !MockCreationalContext.isReleaseCalled();
+ sessionBean.destroy(instance, creationalContext);
+ assert MockCreationalContext.isReleaseCalled();
+ }
+
@Test(groups = { "contexts" })
- @SpecAssertions( {
+ @SpecAssertions( {
@SpecAssertion(section = "6.3", id = "e")
})
public void testSameNormalScopeBeanInjectedEverywhere()
Added: tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/Unregistered.java
===================================================================
--- tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/Unregistered.java
(rev 0)
+++
tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/tests/context/Unregistered.java 2009-07-17
16:46:21 UTC (rev 3077)
@@ -0,0 +1,5 @@
+package org.jboss.jsr299.tck.tests.context;
+
+@interface Unregistered
+{
+}