source: trunk/src/test/java/omq/test/event/MessageTest.java @ 71

Last change on this file since 71 was 70, checked in by stoda, 12 years ago

MultiProxymq? added

File size: 3.0 KB
Line 
1package omq.test.event;
2
3import static org.junit.Assert.assertEquals;
4
5import java.util.Arrays;
6import java.util.Collection;
7import java.util.Properties;
8
9import omq.common.broker.Broker;
10import omq.common.util.ParameterQueue;
11import omq.common.util.Serializer;
12
13import org.junit.After;
14import org.junit.BeforeClass;
15import org.junit.Test;
16import org.junit.runner.RunWith;
17import org.junit.runners.Parameterized;
18import org.junit.runners.Parameterized.Parameters;
19
20@RunWith(value = Parameterized.class)
21public class MessageTest {
22        private static final String NAME = "message";
23
24        private static Broker broker;
25        private static Message serverProxy;
26        private static MessageImpl clientM1;
27        private static MessageImpl clientM2;
28
29        public MessageTest(String type) throws Exception {
30                Properties env = new Properties();
31                env.setProperty(ParameterQueue.USER_NAME, "guest");
32                env.setProperty(ParameterQueue.USER_PASS, "guest");
33
34                // Set host info of rabbimq (where it is)
35                env.setProperty(ParameterQueue.SERVER_HOST, "127.0.0.1");
36                env.setProperty(ParameterQueue.SERVER_PORT, "5672");
37                env.setProperty(ParameterQueue.DURABLE_QUEUES, "false");
38                env.setProperty(ParameterQueue.SERIALIZER_NAME, type);
39                env.setProperty(ParameterQueue.ENABLECOMPRESSION, "false");
40
41                // Set info about where the message will be sent
42                env.setProperty(ParameterQueue.RPC_EXCHANGE, "rpc_exchange");
43
44                // Set info about the queue & the exchange where the ResponseListener
45                // will listen to.
46                env.setProperty(ParameterQueue.RPC_REPLY_QUEUE, "reply_queue");
47                env.setProperty(ParameterQueue.EVENT_REPLY_QUEUE, "event_queue");
48
49                broker = new Broker(env);
50                serverProxy = broker.lookupMulti(NAME, Message.class);
51        }
52
53        @Parameters
54        public static Collection<Object[]> data() {
55                Object[][] data = new Object[][] { { Serializer.JAVA }, { Serializer.GSON }, { Serializer.KRYO } };
56                return Arrays.asList(data);
57        }
58
59        @BeforeClass
60        public static void client() throws Exception {
61                Properties env = new Properties();
62                env.setProperty(ParameterQueue.USER_NAME, "guest");
63                env.setProperty(ParameterQueue.USER_PASS, "guest");
64
65                // Get host info of rabbimq (where it is)
66                env.setProperty(ParameterQueue.SERVER_HOST, "127.0.0.1");
67                env.setProperty(ParameterQueue.SERVER_PORT, "5672");
68                env.setProperty(ParameterQueue.DURABLE_QUEUES, "false");
69                env.setProperty(ParameterQueue.ENABLECOMPRESSION, "false");
70
71                // Set info about where the message will be sent
72                env.setProperty(ParameterQueue.RPC_EXCHANGE, "rpc_exchange");
73                env.setProperty(ParameterQueue.RETRY_TIME_CONNECTION, "2000");
74
75                Broker broker = new Broker(env);
76                clientM1 = new MessageImpl();
77                broker.bind(NAME, clientM1);
78
79                Broker broker2 = new Broker(env);
80                clientM2 = new MessageImpl();
81                broker2.bind(NAME, clientM2);
82        }
83
84        @After
85        public void stop() throws Exception {
86                broker.stopBroker();
87        }
88
89        @Test
90        public void test() throws Exception {
91                String expected = "Hello";
92
93                serverProxy.setMessage(expected);
94                Thread.sleep(200);
95                assertEquals(expected, clientM1.getMessage());
96                assertEquals(expected, clientM2.getMessage());
97                serverProxy.setMessage("");
98                Thread.sleep(200);
99        }
100
101}
Note: See TracBrowser for help on using the repository browser.