1
2
3
4
5
6
7
8
9
10
11 package org.mule.service;
12
13 import org.mule.api.endpoint.InboundEndpoint;
14 import org.mule.api.registry.Registry;
15 import org.mule.api.service.Service;
16 import org.mule.api.transport.Connector;
17 import org.mule.config.QueueProfile;
18 import org.mule.model.seda.SedaModel;
19 import org.mule.model.seda.SedaService;
20 import org.mule.tck.AbstractMuleTestCase;
21 import org.mule.tck.testmodels.mule.TestConnector;
22 import org.mule.transport.AbstractConnector;
23
24 public class ServiceTestCase extends AbstractMuleTestCase
25 {
26
27 private Connector testConnector;
28 private Service service;
29
30
31 protected void doSetUp() throws Exception
32 {
33 super.doSetUp();
34 Registry registry = muleContext.getRegistry();
35
36 testConnector = new TestConnector();
37 testConnector.setName("customTestConnector");
38 registry.registerConnector(testConnector);
39
40 InboundEndpoint inboundEndpoint1 = registry.lookupEndpointFactory().getInboundEndpoint(
41 "test://test1?connector=customTestConnector");
42 InboundEndpoint inboundEndpoint2 = registry.lookupEndpointFactory().getInboundEndpoint(
43 "test://test2?connector=customTestConnector");
44
45 service = new SedaService();
46 service.setName("testService");
47 service.getInboundRouter().addEndpoint(inboundEndpoint1);
48 service.getInboundRouter().addEndpoint(inboundEndpoint2);
49 service.setModel(new SedaModel());
50 ((SedaService) service).setQueueProfile(new QueueProfile());
51 registry.registerService(service);
52
53 }
54
55 public void testUnregisterListenersOnServiceDisposal() throws Exception
56 {
57
58 muleContext.start();
59
60
61 assertEquals(2, ((AbstractConnector) testConnector).getReceivers().size());
62
63 service.dispose();
64
65
66 assertEquals(0, ((AbstractConnector) testConnector).getReceivers().size());
67
68 }
69
70 public void testUnregisterListenersOnServiceStop() throws Exception
71 {
72
73
74 muleContext.start();
75
76
77 assertEquals(2, ((AbstractConnector) testConnector).getReceivers().size());
78
79 service.stop();
80
81
82 assertEquals(0, ((AbstractConnector) testConnector).getReceivers().size());
83
84 }
85
86 }