1
2
3
4
5
6
7
8
9
10
11 package org.mule.transport.xmpp;
12
13 import org.mule.api.endpoint.EndpointBuilder;
14 import org.mule.api.endpoint.InboundEndpoint;
15 import org.mule.api.endpoint.OutboundEndpoint;
16 import org.mule.api.transformer.Transformer;
17 import org.mule.tck.junit4.FunctionalTestCase;
18 import org.mule.transport.xmpp.transformers.ObjectToXmppPacket;
19 import org.mule.transport.xmpp.transformers.XmppPacketToObject;
20
21 import org.junit.Test;
22
23 import static org.junit.Assert.assertEquals;
24 import static org.junit.Assert.assertNotNull;
25 import static org.junit.Assert.assertTrue;
26
27 public class XmppNamespaceHandlerTestCase extends FunctionalTestCase
28 {
29
30 public XmppNamespaceHandlerTestCase()
31 {
32
33 setStartContext(false);
34 }
35
36 @Override
37 protected String getConfigResources()
38 {
39 return "xmpp-namespace-config.xml";
40 }
41
42 @Test
43 public void testConfig() throws Exception
44 {
45 XmppConnector connector = (XmppConnector) muleContext.getRegistry().lookupConnector("xmppConnector");
46 assertNotNull(connector);
47 assertEquals("localhost", connector.getHost());
48 assertEquals(1234, connector.getPort());
49 assertEquals("jabberService", connector.getServiceName());
50 assertEquals("mule", connector.getUser());
51 assertEquals("secret", connector.getPassword());
52 assertEquals("MuleAtWork", connector.getResource());
53 assertTrue(connector.isCreateAccount());
54 }
55
56 @Test
57 public void testSendingMessageEndpoint() throws Exception
58 {
59 OutboundEndpoint endpoint = lookupOutboundEndpoint("sendingMessageEndpoint");
60 assertEquals("xmpp://MESSAGE/recipient@jabberhost", endpoint.getEndpointURI().toString());
61 assertEquals("TheSubject", endpoint.getProperty(XmppConnector.XMPP_SUBJECT));
62 }
63
64 @Test
65 public void testReceivingChatEndpoint() throws Exception
66 {
67 InboundEndpoint endpoint = lookupInboundEndpoint("receivingChatEndpoint");
68 assertEquals("xmpp://CHAT/sender@jabberhost", endpoint.getEndpointURI().toString());
69 }
70
71 @Test
72 public void testTransformers() throws Exception
73 {
74 Transformer transformer = lookupTransformer("ObjectToXmpp");
75 assertNotNull(transformer);
76 assertEquals(ObjectToXmppPacket.class, transformer.getClass());
77
78 transformer = lookupTransformer("XmppToObject");
79 assertNotNull(transformer);
80 assertEquals(XmppPacketToObject.class, transformer.getClass());
81 }
82
83 private OutboundEndpoint lookupOutboundEndpoint(String name) throws Exception
84 {
85 EndpointBuilder endpointBuilder = lookupEndpointBuilder(name);
86 return endpointBuilder.buildOutboundEndpoint();
87 }
88
89 private InboundEndpoint lookupInboundEndpoint(String name) throws Exception
90 {
91 EndpointBuilder endpointBuilder = lookupEndpointBuilder(name);
92 return endpointBuilder.buildInboundEndpoint();
93 }
94
95 private EndpointBuilder lookupEndpointBuilder(String name)
96 {
97 EndpointBuilder endpointBuilder = muleContext.getRegistry().lookupEndpointBuilder(name);
98 assertNotNull(endpointBuilder);
99 return endpointBuilder;
100 }
101
102 private Transformer lookupTransformer(String name)
103 {
104 Transformer transformer = muleContext.getRegistry().lookupTransformer(name);
105 assertNotNull(transformer);
106 return transformer;
107 }
108 }