X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2FConfigurationImplTest.java;h=53c3a89589d663f108d59510145ac239607407c8;hp=56fd3c568a5e2489c59a7172cfc9ad5b78b40713;hb=8f81c2a44a3295f6f721268e3fd09e4cbcd02287;hpb=c222e37f2a0f0f3f6266242fbea2d3b018f4e6e3 diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ConfigurationImplTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ConfigurationImplTest.java index 56fd3c568a..53c3a89589 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ConfigurationImplTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ConfigurationImplTest.java @@ -1,14 +1,24 @@ +/* + * Copyright (c) 2014, 2015 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.cluster.datastore; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; +import com.google.common.collect.Sets; import com.typesafe.config.ConfigFactory; -import junit.framework.Assert; -import org.junit.BeforeClass; -import org.junit.Test; - import java.io.File; import java.util.List; - -import static org.junit.Assert.assertTrue; +import java.util.Set; +import org.junit.Assert; +import org.junit.BeforeClass; +import org.junit.Test; public class ConfigurationImplTest { @@ -31,6 +41,49 @@ public class ConfigurationImplTest { assertTrue(memberShardNames.contains("people-1")); assertTrue(memberShardNames.contains("cars-1")); + + // Retrieve once again to hit cache + + memberShardNames = + configuration.getMemberShardNames("member-1"); + + assertTrue(memberShardNames.contains("people-1")); + assertTrue(memberShardNames.contains("cars-1")); + + } + + @Test + public void testGetMembersFromShardName(){ + List members = + configuration.getMembersFromShardName("default"); + + assertEquals(3, members.size()); + + assertTrue(members.contains("member-1")); + assertTrue(members.contains("member-2")); + assertTrue(members.contains("member-3")); + + assertFalse(members.contains("member-26")); + + // Retrieve once again to hit cache + members = + configuration.getMembersFromShardName("default"); + + assertEquals(3, members.size()); + + assertTrue(members.contains("member-1")); + assertTrue(members.contains("member-2")); + assertTrue(members.contains("member-3")); + + assertFalse(members.contains("member-26")); + + + // Try to find a shard which is not present + + members = + configuration.getMembersFromShardName("foobar"); + + assertEquals(0, members.size()); } @Test @@ -38,4 +91,21 @@ public class ConfigurationImplTest { File f = new File("./module-shards.conf"); ConfigFactory.parseFile(f); } + + @Test + public void testGetAllShardNames(){ + Set allShardNames = configuration.getAllShardNames(); + + assertEquals(4, allShardNames.size()); + assertTrue(allShardNames.contains("default")); + assertTrue(allShardNames.contains("people-1")); + assertTrue(allShardNames.contains("cars-1")); + assertTrue(allShardNames.contains("test-1")); + } + + @Test + public void testGetUniqueMemberNamesForAllShards() { + assertEquals("getUniqueMemberNamesForAllShards", Sets.newHashSet("member-1", "member-2", "member-3"), + configuration.getUniqueMemberNamesForAllShards()); + } }