1
2
3
4
5
6
7
8
9
10
11 package org.mule.management.mbeans;
12
13 import org.mule.api.transport.Connector;
14 import org.mule.management.AbstractMuleJmxTestCase;
15 import org.mule.module.management.agent.JmxAgent;
16 import org.mule.tck.testmodels.mule.TestConnector;
17
18 import java.util.Set;
19
20 import javax.management.ObjectName;
21
22 public class ConnectorServiceTestCase extends AbstractMuleJmxTestCase
23 {
24
25 protected String domainName;
26 protected JmxAgent jmxAgent;
27
28 @Override
29 protected void doSetUp() throws Exception
30 {
31 super.doSetUp();
32 jmxAgent = (JmxAgent) muleContext.getRegistry().lookupObject(JmxAgent.class);
33
34 }
35
36 public void testUndeploy() throws Exception
37 {
38 final Connector connector = new TestConnector(muleContext);
39 connector.setName("TEST_CONNECTOR");
40 muleContext.getRegistry().registerConnector(connector);
41 muleContext.start();
42
43 domainName = jmxSupport.getDomainName(muleContext);
44 final String query = domainName + ":*";
45 final ObjectName objectName = jmxSupport.getObjectName(query);
46 Set mbeans = mBeanServer.queryMBeans(objectName, null);
47
48
49
50
51
52
53
54 assertEquals("Unexpected number of components registered in the domain.", 5, mbeans.size());
55 muleContext.dispose();
56
57 mbeans = mBeanServer.queryMBeans(objectName, null);
58 assertEquals("There should be no MBeans left in the domain", 0, mbeans.size());
59 }
60
61 @Override
62 protected void doTearDown() throws Exception
63 {
64 unregisterMBeansByMask(domainName + ":*");
65 }
66 }