+++ /dev/null
-/*
- * Copyright (c) 2013 Cisco Systems, Inc. and others. 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 org.opendaylight.controller.config.util;
-
-import static org.hamcrest.CoreMatchers.hasItem;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertThat;
-
-import com.google.common.collect.Sets;
-import java.lang.management.ManagementFactory;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Set;
-import javax.management.InstanceNotFoundException;
-import javax.management.MBeanServer;
-import javax.management.ObjectName;
-import org.junit.After;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-import org.opendaylight.controller.config.api.ConfigRegistry;
-
-public class ConfigRegistryClientsTest {
-
- private TestingConfigRegistry testingRegistry;
- private ObjectName testingRegistryON;
- private final MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();
- private ConfigRegistryClient jmxRegistryClient;
- private ConfigTransactionClient jmxTransactionClient;
- private Map<String, ObjectName> map;
-
- @Before
- public void setUp() throws Exception {
- testingRegistry = new TestingConfigRegistry();
- testingRegistryON = ConfigRegistry.OBJECT_NAME;
- mbs.registerMBean(testingRegistry, testingRegistryON);
- jmxRegistryClient = new ConfigRegistryJMXClient(
- ManagementFactory.getPlatformMBeanServer());
- map = new HashMap<>();
- }
-
- @After
- public void cleanUp() throws Exception {
- if (testingRegistryON != null) {
- mbs.unregisterMBean(testingRegistryON);
- }
- }
-
- @Test
- public void testCreateTransaction() throws Exception{
- jmxTransactionClient = jmxRegistryClient.createTransaction();
- assertNotNull(jmxTransactionClient);
- }
-
- @Test
- public void testGetConfigTransactionClient2() throws Exception{
- jmxTransactionClient = jmxRegistryClient.getConfigTransactionClient("transactionName");
- assertNotNull(jmxTransactionClient);
- }
-
- @Test
- public void testGetConfigTransactionClient() throws Exception{
- jmxTransactionClient = jmxRegistryClient.getConfigTransactionClient(testingRegistryON);
- assertNotNull(jmxTransactionClient);
- }
-
- @Test(expected = IllegalArgumentException.class)
- public void testNewMXBeanProxy() throws Exception{
- if (jmxRegistryClient instanceof ConfigRegistryJMXClient) {
- ConfigRegistryJMXClient client = (ConfigRegistryJMXClient) jmxRegistryClient;
- assertNull(client.newMXBeanProxy(testingRegistryON, String.class));
- } else {
- throw new AssertionError("brm msg");
- }
- }
-
- @Test
- public void testBeginConfig() throws Exception{
- Assert.assertNotNull(jmxRegistryClient.beginConfig());
- }
-
- @Test
- public void testCommitConfig() throws Exception{
- assertNull(jmxRegistryClient.commitConfig(testingRegistryON));
- }
-
- @Test
- public void testGetOpenConfigs() throws Exception{
- assertNull(jmxRegistryClient.getOpenConfigs());
- }
-
- @Test(expected = RuntimeException.class)
- public void testGetVersion() throws Exception{
- assertEquals(3, jmxRegistryClient.getVersion());
- }
-
- @Test
- public void testGetAvailableModuleNames() throws Exception{
- assertNull(jmxRegistryClient.getAvailableModuleNames());
- }
-
- @Test
- public void testIsHealthy() throws Exception{
- assertEquals(false, jmxRegistryClient.isHealthy());
- }
-
- @Test
- public void testLookupConfigBeans3() throws Exception{
- Set<ObjectName> son = jmxRegistryClient.lookupConfigBeans();
- assertEquals(3, son.size());
- }
-
- @Test
- public void testLookupConfigBeans2() throws Exception{
- Set<ObjectName> son = jmxRegistryClient.lookupConfigBeans(TestingConfigRegistry.moduleName1);
- assertEquals(2, son.size());
- }
-
- @Test
- public void testLookupConfigBeans() throws Exception{
- Set<ObjectName> son = jmxRegistryClient.lookupConfigBeans(TestingConfigRegistry.moduleName1, TestingConfigRegistry.instName1);
- Set<ObjectName> on = Sets.newHashSet(TestingConfigRegistry.conf2);
- assertEquals(on, son);
- }
-
- @Test
- public void testLookupConfigBean() throws Exception{
- ObjectName on = jmxRegistryClient.lookupConfigBean(TestingConfigRegistry.moduleName1, null);
- assertEquals(TestingConfigRegistry.conf3, on);
- }
-
- @Test
- public void testLookupRuntimeBeans() throws Exception {
- Set<ObjectName> jmxLookup = lookupRuntimeBeans(jmxRegistryClient);
- assertEquals(Sets.newHashSet(TestingConfigRegistry.run2, TestingConfigRegistry.run1, TestingConfigRegistry.run3), jmxLookup);
- }
-
- private Set<ObjectName> lookupRuntimeBeans(final ConfigRegistryClient client)
- throws Exception {
- Set<ObjectName> beans = client.lookupRuntimeBeans();
- for (ObjectName on : beans) {
- assertEquals("RuntimeBean", on.getKeyProperty("type"));
- }
- assertEquals(3, beans.size());
- return beans;
- }
-
- @Test
- public void testLookupRuntimeBeansWithIfcNameAndInstanceName()
- throws InstanceNotFoundException {
- Set<ObjectName> jmxLookup = clientLookupRuntimeBeansWithModuleAndInstance(
- jmxRegistryClient, TestingConfigRegistry.moduleName1,
- TestingConfigRegistry.instName1);
- assertEquals(1, jmxLookup.size());
- assertEquals(Sets.newHashSet(TestingConfigRegistry.run2), jmxLookup);
-
- jmxLookup = clientLookupRuntimeBeansWithModuleAndInstance(
- jmxRegistryClient, TestingConfigRegistry.moduleName2,
- TestingConfigRegistry.instName2);
- assertEquals(1, jmxLookup.size());
- assertEquals(Sets.newHashSet(TestingConfigRegistry.run3), jmxLookup);
-
- jmxLookup = clientLookupRuntimeBeansWithModuleAndInstance(
- jmxRegistryClient, TestingConfigRegistry.moduleName1,
- TestingConfigRegistry.instName2);
- assertEquals(0, jmxLookup.size());
- assertEquals(Sets.newHashSet(), jmxLookup);
- }
-
- private Set<ObjectName> clientLookupRuntimeBeansWithModuleAndInstance(
- final ConfigRegistryClient client, final String moduleName, final String instanceName) {
- Set<ObjectName> beans = client.lookupRuntimeBeans(moduleName, instanceName);
- if (beans.size() > 0) {
- assertEquals("RuntimeBean",
- beans.iterator().next().getKeyProperty("type"));
- }
- return beans;
- }
-
- @Test
- public void testCheckConfigBeanExists() throws Exception{
- jmxRegistryClient.checkConfigBeanExists(testingRegistryON);
- assertEquals(true, TestingConfigRegistry.checkBool);
- }
-
- @Test
- public void testLookupConfigBeanByServiceInterfaceName() throws Exception{
- ObjectName on = clientLookupConfigBeanByServiceInterfaceName();
- assertEquals(TestingConfigRegistry.conf1, on);
- }
-
- private ObjectName clientLookupConfigBeanByServiceInterfaceName(){
- return jmxRegistryClient.lookupConfigBeanByServiceInterfaceName("qnameA", "refA");
- }
-
- @Test
- public void testGetServiceMapping() throws Exception{
- assertNull(jmxRegistryClient.getServiceMapping());
- }
-
- @Test
- public void testLookupServiceReferencesByServiceInterfaceName() throws Exception{
- map.put("conf2", TestingConfigRegistry.conf2);
- assertEquals(map, jmxRegistryClient.lookupServiceReferencesByServiceInterfaceName("qnameB"));
- }
-
- @Test
- public void testLookupServiceInterfaceNames() throws Exception{
- assertThat(clientLookupServiceInterfaceNames(testingRegistryON), hasItem(TestingConfigRegistry.serviceQName1));
- assertThat(clientLookupServiceInterfaceNames(testingRegistryON), hasItem(TestingConfigRegistry.serviceQName2));
- }
-
- private Set<String> clientLookupServiceInterfaceNames(final ObjectName client) throws InstanceNotFoundException{
- return jmxRegistryClient.lookupServiceInterfaceNames(client);
- }
-
- @Test
- public void testGetServiceInterfaceName() throws Exception{
- assertNull(jmxRegistryClient.getServiceInterfaceName(null, null));
- }
-
- @Test(expected = RuntimeException.class)
- public void testInvokeMethod() throws Exception{
- assertNull(jmxRegistryClient.invokeMethod(testingRegistryON, "name", null, null));
- }
-
- @Test(expected = RuntimeException.class)
- public void testGetAttributeCurrentValue() throws Exception{
- assertNull(jmxRegistryClient.getAttributeCurrentValue(testingRegistryON, "attrName"));
- }
-
- @Test
- public void testGetAvailableModuleFactoryQNames() throws Exception{
- for(String str : jmxRegistryClient.getAvailableModuleFactoryQNames()){
- if(str != TestingConfigRegistry.moduleName1){
- assertEquals(TestingConfigRegistry.moduleName2, str);
- }
- else{
- assertEquals(TestingConfigRegistry.moduleName1, str);
- }
- }
- }
-
- @Test
- public void testGetServiceReference() throws Exception{
- Assert.assertNotNull(jmxRegistryClient.getServiceReference(null, null));
- }
-
- @Test(expected = UnsupportedOperationException.class)
- public void testcheckServiceReferenceExists() throws Exception{
- jmxRegistryClient.checkServiceReferenceExists(testingRegistryON);
- }
-}