diff --git a/booking/pom.xml b/booking/pom.xml
index e70c709..657144d 100644
--- a/booking/pom.xml
+++ b/booking/pom.xml
@@ -34,7 +34,7 @@
src/main/webapp
${env.JBOSS_HOME}
default
- 1.0.0.Alpha3
+ 1.0.0.Alpha5
3.1
1.1.1.Final
6.0.0.Final
@@ -142,6 +142,12 @@
${arquillian.version}
test
+
+
+ org.jboss.weld
+ weld-core
+ test
+
org.jboss.spec
diff --git a/booking/src/test/java/org/jboss/seam/examples/booking/booking/BookingAgentTest.java b/booking/src/test/java/org/jboss/seam/examples/booking/booking/BookingAgentTest.java
index 00b045b..05e7c61 100644
--- a/booking/src/test/java/org/jboss/seam/examples/booking/booking/BookingAgentTest.java
+++ b/booking/src/test/java/org/jboss/seam/examples/booking/booking/BookingAgentTest.java
@@ -16,7 +16,6 @@
*/
package org.jboss.seam.examples.booking.booking;
-import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;
@@ -31,16 +30,21 @@
import org.jboss.arquillian.api.Deployment;
import org.jboss.arquillian.junit.Arquillian;
import org.jboss.seam.examples.booking.account.Authenticated;
+import org.jboss.seam.examples.booking.i18n.DefaultBundleKey;
+import org.jboss.seam.examples.booking.log.BookingLog;
import org.jboss.seam.examples.booking.model.Booking;
import org.jboss.seam.examples.booking.model.CreditCardType;
import org.jboss.seam.examples.booking.model.Hotel;
import org.jboss.seam.examples.booking.model.User;
import org.jboss.seam.examples.booking.support.MavenArtifactResolver;
import org.jboss.seam.examples.booking.support.NoOpLogger;
-import org.jboss.shrinkwrap.api.Archive;
import org.jboss.shrinkwrap.api.ShrinkWrap;
-import org.jboss.shrinkwrap.api.asset.StringAsset;
+import org.jboss.shrinkwrap.api.asset.EmptyAsset;
import org.jboss.shrinkwrap.api.spec.WebArchive;
+import org.jboss.weld.Container;
+import org.jboss.weld.context.bound.BoundConversationContext;
+import org.jboss.weld.context.bound.BoundRequest;
+import org.jboss.weld.context.bound.MutableBoundRequest;
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -48,17 +52,17 @@
@RunWith(Arquillian.class)
public class BookingAgentTest {
@Deployment
- public static Archive> createTestArchive() {
- WebArchive war = ShrinkWrap
+ public static WebArchive createDeployment() {
+ return ShrinkWrap
.create(WebArchive.class, "test.war")
.addPackage(Hotel.class.getPackage())
- .addClasses(BookingAgent.class, BookingAgent.class, Confirmed.class, Authenticated.class, NoOpLogger.class)
- .addLibraries(MavenArtifactResolver.resolve("joda-time:joda-time:1.6"),
- MavenArtifactResolver.resolve("org.jboss.seam.international:seam-international-api:3.0.0.Alpha1"),
- MavenArtifactResolver.resolve("org.jboss.seam.international:seam-international:3.0.0.Alpha1"))
- .addWebResource("test-persistence.xml", "classes/META-INF/persistence.xml")
- .addWebResource(new StringAsset(""), "beans.xml");
- return war;
+ .addClasses(BookingAgent.class, BookingAgent.class, Confirmed.class, Authenticated.class, NoOpLogger.class, DefaultBundleKey.class)
+ .addPackage(BookingLog.class.getPackage())
+ .addAsLibraries(
+ MavenArtifactResolver.resolve("org.jboss.seam.solder:seam-solder:3.0.0.CR4"),
+ MavenArtifactResolver.resolve("org.jboss.seam.international:seam-international:3.0.0.CR4"))
+ .addAsWebInfResource("test-persistence.xml", "classes/META-INF/persistence.xml")
+ .addAsWebInfResource(EmptyAsset.INSTANCE, "beans.xml");
}
@Inject
@@ -91,24 +95,32 @@ public void prepareSeedData() throws Exception {
public void testBookHotel() throws Exception {
prepareSeedData();
- // we have to depend on the Weld API to setup the conversation scope
- /*
- * TODO uncomment here ConversationContext cc = new ConversationContext(); cc.setBeanStore(new HashMapBeanStore());
- * cc.setActive(true); ((BeanManagerImpl) beanManager).addContext(cc);
- */
+ BoundConversationContext ctx = null;
+ BoundRequest storage = new MutableBoundRequest(new HashMap(), new HashMap());
+ try {
+ ctx = Container.instance().deploymentManager().instance().select(BoundConversationContext.class).get();
+ ctx.associate(storage);
+ ctx.activate();
- bookingAgent.selectHotel(1l);
- bookingAgent.bookHotel();
- Booking booking = bookingInstance.get();
- booking.setCreditCardNumber("1111222233334444");
- booking.setCreditCardExpiryMonth(1);
- booking.setCreditCardExpiryYear(2012);
- booking.setCreditCardType(CreditCardType.VISA);
- booking.setBeds(1);
- booking.setSmoking(false);
- bookingAgent.confirm();
-
- Assert.assertEquals(1, em.createQuery("select b from Booking b").getResultList().size());
+ bookingAgent.selectHotel(1l);
+ bookingAgent.bookHotel();
+ Booking booking = bookingInstance.get();
+ booking.setCreditCardNumber("1111222233334444");
+ booking.setCreditCardExpiryMonth(1);
+ booking.setCreditCardExpiryYear(2012);
+ booking.setCreditCardType(CreditCardType.VISA);
+ booking.setBeds(1);
+ booking.setSmoking(false);
+ bookingAgent.confirm();
+
+ Assert.assertEquals(1, em.createQuery("select b from Booking b").getResultList().size());
+ }
+ finally {
+ if (ctx != null && ctx.isActive()) {
+ ctx.dissociate(storage);
+ ctx.deactivate();
+ }
+ }
}
@Produces
@@ -116,13 +128,4 @@ public void testBookHotel() throws Exception {
User getRegisteredUser() {
return em.find(User.class, "ike");
}
- /*
- * TODO uncomment here public static class HashMapBeanStore extends AbstractMapBackedBeanStore implements Serializable {
- *
- * protected Map> delegate;
- *
- * public HashMapBeanStore() { delegate = new HashMap>(); }
- *
- * @Override protected Map> delegate() { return delegate; } }
- */
}
diff --git a/booking/src/test/java/org/jboss/seam/examples/booking/inventory/HotelSearchTest.java b/booking/src/test/java/org/jboss/seam/examples/booking/inventory/HotelSearchTest.java
index 2742753..9d2f98f 100644
--- a/booking/src/test/java/org/jboss/seam/examples/booking/inventory/HotelSearchTest.java
+++ b/booking/src/test/java/org/jboss/seam/examples/booking/inventory/HotelSearchTest.java
@@ -54,11 +54,11 @@ public static Archive> createTestArchive() {
.addPackage(HotelSearch.class.getPackage())
.addPackage(Hotel.class.getPackage())
.addClasses(NoOpLogger.class)
- .addLibraries(MavenArtifactResolver.resolve("joda-time:joda-time:1.6"),
+ .addAsLibraries(MavenArtifactResolver.resolve("joda-time:joda-time:1.6"),
MavenArtifactResolver.resolve("org.jboss.seam.international:seam-international-api:3.0.0.Alpha1"),
MavenArtifactResolver.resolve("org.jboss.seam.international:seam-international:3.0.0.Alpha1"))
- .addWebResource("test-persistence.xml", "classes/META-INF/persistence.xml")
- .addWebResource(new StringAsset(""), "beans.xml");
+ .addAsWebInfResource("test-persistence.xml", "classes/META-INF/persistence.xml")
+ .addAsWebInfResource(new StringAsset(""), "beans.xml");
return war;
}