Title: [734] trunk/core/src/test/java/org/servicemix/jbi/nmr/flow/jca/JCAFlowTest.java: Add a real clustered test case
Revision
734
Author
gnt
Date
2005-11-03 07:58:41 -0500 (Thu, 03 Nov 2005)

Log Message

Add a real clustered test case

Modified Paths


Diff

Modified: trunk/core/src/test/java/org/servicemix/jbi/nmr/flow/jca/JCAFlowTest.java (733 => 734)

--- trunk/core/src/test/java/org/servicemix/jbi/nmr/flow/jca/JCAFlowTest.java	2005-11-03 12:57:39 UTC (rev 733)
+++ trunk/core/src/test/java/org/servicemix/jbi/nmr/flow/jca/JCAFlowTest.java	2005-11-03 12:58:41 UTC (rev 734)
@@ -48,8 +48,6 @@
 public class JCAFlowTest extends TestCase {
 	private JBIContainer senderContainer = new JBIContainer();
     private JBIContainer receiverContainer = new JBIContainer();
-    private SenderComponent sender;
-    private ReceiverComponent receiver;
     private BrokerContainer broker;
     private TransactionTemplate tt;
     private static final int NUM_MESSAGES = 10;
@@ -84,6 +82,7 @@
         senderContainer.setTransactionManager(tm);
         senderContainer.setName("senderContainer");
         senderContainer.setFlow(senderFlow);
+        senderContainer.setMonitorInstallationDirectory(false);
         senderContainer.init();
         senderContainer.start();
         
@@ -94,18 +93,9 @@
         receiverContainer.setTransactionManager(tm);
         receiverContainer.setName("receiverContainer");
         receiverContainer.setFlow(receiverFlow);
+        receiverContainer.setMonitorInstallationDirectory(false);
         receiverContainer.init();
         receiverContainer.start();
-
-        receiver = new ReceiverComponent();
-        sender = new SenderComponent();
-        sender.setResolver(new ServiceNameEndpointResolver(ReceiverComponent.SERVICE));
-
-        senderContainer.activateComponent(new ActivationSpec("sender", sender));
-        receiverContainer.activateComponent(new ActivationSpec("receiver", receiver));
-
-        
-        Thread.sleep(5000);
     }
     
     protected void tearDown() throws Exception{
@@ -116,12 +106,30 @@
     }
     
     public void testInOnly() throws Exception {
-      sender.sendMessages(NUM_MESSAGES);
-      Thread.sleep(3000);
-      receiver.getMessageList().assertMessagesReceived(NUM_MESSAGES);
+        final SenderComponent sender = new SenderComponent();
+        final ReceiverComponent receiver =  new ReceiverComponent();
+        sender.setResolver(new ServiceNameEndpointResolver(ReceiverComponent.SERVICE));
+
+        senderContainer.activateComponent(new ActivationSpec("sender", sender));
+        receiverContainer.activateComponent(new ActivationSpec("receiver", receiver));
+
+        Thread.sleep(5000);
+
+        sender.sendMessages(NUM_MESSAGES);
+        Thread.sleep(3000);
+        receiver.getMessageList().assertMessagesReceived(NUM_MESSAGES);
     }
     
     public void testTxInOnly() throws Exception {
+        final SenderComponent sender = new SenderComponent();
+        final ReceiverComponent receiver =  new ReceiverComponent();
+        sender.setResolver(new ServiceNameEndpointResolver(ReceiverComponent.SERVICE));
+
+        senderContainer.activateComponent(new ActivationSpec("sender", sender));
+        receiverContainer.activateComponent(new ActivationSpec("receiver", receiver));
+
+        Thread.sleep(5000);
+        
     	senderContainer.setAutoEnlistInTransaction(true);
         tt.execute(new TransactionCallback() {
 	  		public Object doInTransaction(TransactionStatus status) {
@@ -136,4 +144,45 @@
       Thread.sleep(3000);
       receiver.getMessageList().assertMessagesReceived(NUM_MESSAGES);
     }
+    
+    public void testClusteredInOnly() throws Exception {
+        final SenderComponent sender = new SenderComponent();
+        final ReceiverComponent receiver1 =  new ReceiverComponent();
+        final ReceiverComponent receiver2 =  new ReceiverComponent();
+        sender.setResolver(new ServiceNameEndpointResolver(ReceiverComponent.SERVICE));
+
+        senderContainer.activateComponent(new ActivationSpec("sender", sender));
+        senderContainer.activateComponent(new ActivationSpec("receiver", receiver1));
+        receiverContainer.activateComponent(new ActivationSpec("receiver", receiver2));
+        Thread.sleep(1000);
+
+        sender.sendMessages(NUM_MESSAGES);
+        Thread.sleep(3000);
+        assertTrue(receiver1.getMessageList().hasReceivedMessage());
+        assertTrue(receiver2.getMessageList().hasReceivedMessage());
+        receiver1.getMessageList().flushMessages();
+        receiver2.getMessageList().flushMessages();
+        
+        senderContainer.deactivateComponent("receiver");
+        Thread.sleep(1000);
+        
+        sender.sendMessages(NUM_MESSAGES);
+        Thread.sleep(3000);
+        assertFalse(receiver1.getMessageList().hasReceivedMessage());
+        assertTrue(receiver2.getMessageList().hasReceivedMessage());
+        receiver1.getMessageList().flushMessages();
+        receiver2.getMessageList().flushMessages();
+        
+        senderContainer.activateComponent(new ActivationSpec("receiver", receiver1));
+        receiverContainer.deactivateComponent("receiver");
+        Thread.sleep(1000);
+        
+        sender.sendMessages(NUM_MESSAGES);
+        Thread.sleep(3000);
+        assertTrue(receiver1.getMessageList().hasReceivedMessage());
+        assertFalse(receiver2.getMessageList().hasReceivedMessage());
+        receiver1.getMessageList().flushMessages();
+        receiver2.getMessageList().flushMessages();
+        
+    }
 }

Reply via email to