/******************************************************************************* * Copyright (c) 2006 Jeff Mesnil * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html *******************************************************************************/ package net.jmesnil.jmx.resources; import java.lang.management.ManagementFactory; import java.util.UUID; import javax.management.MBeanServer; import javax.management.MBeanServerConnection; import javax.management.remote.JMXConnectorServer; import javax.management.remote.JMXConnectorServerFactory; import javax.management.remote.JMXServiceURL; import junit.framework.TestCase; public class DefaultMBeanServerConnectionFactoryTest extends TestCase { private String correctURL; private JMXConnectorServer cs; protected void setUp() throws Exception { super.setUp(); MBeanServer mbs = ManagementFactory.getPlatformMBeanServer(); JMXServiceURL url = new JMXServiceURL("service:jmx:rmi://"); //$NON-NLS-1$ cs = JMXConnectorServerFactory.newJMXConnectorServer(url, null, mbs); cs.start(); correctURL = cs.getAddress().toString(); System.out.println(correctURL); } protected void tearDown() throws Exception { cs.stop(); correctURL = null; super.tearDown(); } public void testConnectToNullURL() throws Exception { DefaultMBeanServerConnectionFactory factory = new DefaultMBeanServerConnectionFactory(); try { factory.createMBeanServerConnection(null); fail("should not connect to null descriptor"); //$NON-NLS-1$ } catch (Exception e) { } } public void testConnectToBadURL() throws Exception { DefaultMBeanServerConnectionFactory factory = new DefaultMBeanServerConnectionFactory(); MBeanServerConnectionDescriptor descriptor = new MBeanServerConnectionDescriptor(UUID.randomUUID().toString(), "service:whatever", null, null); try { factory.createMBeanServerConnection(descriptor); fail("should not connect to bad URL"); //$NON-NLS-1$ } catch (Exception e) { } } public void testConnectToURL() throws Exception { DefaultMBeanServerConnectionFactory factory = new DefaultMBeanServerConnectionFactory(); MBeanServerConnectionDescriptor descriptor = new MBeanServerConnectionDescriptor(correctURL, correctURL, null, null); MBeanServerConnection mbsc = factory.createMBeanServerConnection(descriptor); assertNotNull(mbsc); } }