[weld-commits] Weld SVN: r5442 - core/trunk/tests/src/test/java/org/jboss/weld/tests/serialization.

weld-commits at lists.jboss.org weld-commits at lists.jboss.org
Tue Jan 12 08:25:58 EST 2010


Author: pete.muir at jboss.org
Date: 2010-01-12 08:25:58 -0500 (Tue, 12 Jan 2010)
New Revision: 5442

Added:
   core/trunk/tests/src/test/java/org/jboss/weld/tests/serialization/TestConversationManager.java
Modified:
   core/trunk/tests/src/test/java/org/jboss/weld/tests/serialization/SerializationTest.java
Log:
update test

Modified: core/trunk/tests/src/test/java/org/jboss/weld/tests/serialization/SerializationTest.java
===================================================================
--- core/trunk/tests/src/test/java/org/jboss/weld/tests/serialization/SerializationTest.java	2010-01-12 13:23:41 UTC (rev 5441)
+++ core/trunk/tests/src/test/java/org/jboss/weld/tests/serialization/SerializationTest.java	2010-01-12 13:25:58 UTC (rev 5442)
@@ -2,16 +2,10 @@
 
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
-import java.io.IOException;
 import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
-import java.lang.reflect.Field;
 
-import javax.enterprise.inject.spi.Bean;
-
 import org.jboss.testharness.impl.packaging.Artifact;
-import org.jboss.weld.conversation.AbstractConversationManager;
-import org.jboss.weld.conversation.ConversationManager;
 import org.jboss.weld.test.AbstractWeldTest;
 import org.testng.annotations.Test;
 
@@ -21,17 +15,13 @@
    @SuppressWarnings("unchecked")
    @Test(description="WELD-363", groups = "broken")
    public void testConversationManagerSerializable()
-      throws IOException, ClassNotFoundException, SecurityException, NoSuchFieldException, IllegalArgumentException, IllegalAccessException
+      throws Exception
    {
-      Bean<ConversationManager> cmBean = (Bean<ConversationManager>) getCurrentManager()
-         .getBeans(ConversationManager.class).iterator().next();
+      TestConversationManager cMgr = getCurrentManager().getInstanceByType(TestConversationManager.class);
       
-      ConversationManager cMgr = cmBean.create(getCurrentManager().createCreationalContext(cmBean));
+      assert cMgr.getConversationInstance() != null;
+      assert cMgr.getConversationInstance().get() != null;
       
-      Field ccField = AbstractConversationManager.class.getDeclaredField("currentConversation");
-      ccField.setAccessible(true);
-      assert ccField.get(cMgr) != null;
-      
       ByteArrayOutputStream serialized = new ByteArrayOutputStream();
       ObjectOutputStream out = new ObjectOutputStream(serialized);
       
@@ -41,7 +31,9 @@
       ObjectInputStream in = new ObjectInputStream(new ByteArrayInputStream(serialized.toByteArray()));
       Object deserialized = in.readObject();
       
-      assert deserialized instanceof ConversationManager;
-      assert ccField.get(deserialized) != null;
+      assert deserialized instanceof TestConversationManager;
+      TestConversationManager deserializedCMgr = (TestConversationManager) deserialized;
+      assert deserializedCMgr.getConversationInstance() != null;
+      assert deserializedCMgr.getConversationInstance().get() != null;
    }
 }

Added: core/trunk/tests/src/test/java/org/jboss/weld/tests/serialization/TestConversationManager.java
===================================================================
--- core/trunk/tests/src/test/java/org/jboss/weld/tests/serialization/TestConversationManager.java	                        (rev 0)
+++ core/trunk/tests/src/test/java/org/jboss/weld/tests/serialization/TestConversationManager.java	2010-01-12 13:25:58 UTC (rev 5442)
@@ -0,0 +1,26 @@
+package org.jboss.weld.tests.serialization;
+
+import java.lang.reflect.Field;
+
+import javax.enterprise.inject.Instance;
+
+import org.jboss.weld.conversation.AbstractConversationManager;
+import org.jboss.weld.conversation.ConversationImpl;
+import org.jboss.weld.conversation.ServletConversationManager;
+
+public class TestConversationManager extends ServletConversationManager
+{
+
+   /**
+    * 
+    */
+   private static final long serialVersionUID = 9081670661490776033L;
+   
+   public Instance<ConversationImpl> getConversationInstance() throws Exception
+   {
+      Field ccField = AbstractConversationManager.class.getDeclaredField("currentConversation");
+      ccField.setAccessible(true);
+      return (Instance<ConversationImpl>) ccField.get(this);
+   }
+
+}


Property changes on: core/trunk/tests/src/test/java/org/jboss/weld/tests/serialization/TestConversationManager.java
___________________________________________________________________
Name: svn:mime-type
   + text/plain
Name: svn:eol-style
   + native



More information about the weld-commits mailing list