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%2Fshardstrategy%2FShardStrategyFactoryTest.java;h=a7310903a7c7d206bc96ada0affe67ae84a3fe35;hp=2cff981b680f99de9855db40ed68bd49ed23a2fb;hb=dcc776a5e749d495a66e8753e123a1ddbd15d9c6;hpb=a6690c65b0b60e9aeddc488267b7ee2ba0132c67 diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/shardstrategy/ShardStrategyFactoryTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/shardstrategy/ShardStrategyFactoryTest.java index 2cff981b68..a7310903a7 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/shardstrategy/ShardStrategyFactoryTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/shardstrategy/ShardStrategyFactoryTest.java @@ -1,29 +1,47 @@ +/* + * 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.shardstrategy; -import org.junit.Rule; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertThrows; +import static org.junit.Assert.assertTrue; + +import org.junit.Before; import org.junit.Test; -import org.junit.rules.ExpectedException; +import org.opendaylight.controller.cluster.datastore.config.ConfigurationImpl; +import org.opendaylight.controller.md.cluster.datastore.model.CarsModel; import org.opendaylight.controller.md.cluster.datastore.model.TestModel; - -import static junit.framework.Assert.assertNotNull; +import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; public class ShardStrategyFactoryTest { - - @Rule - public ExpectedException expectedEx = ExpectedException.none(); - - @Test - public void testGetStrategy(){ - ShardStrategy strategy = ShardStrategyFactory.getStrategy(TestModel.TEST_PATH); - assertNotNull(strategy); - } - - @Test - public void testGetStrategyNullPointerExceptionWhenPathIsNull(){ - expectedEx.expect(NullPointerException.class); - expectedEx.expectMessage("path should not be null"); - - ShardStrategyFactory.getStrategy(null); - } - -} \ No newline at end of file + private ShardStrategyFactory factory; + + @Before + public void setUp() { + factory = new ShardStrategyFactory(new ConfigurationImpl("module-shards.conf", "modules.conf")); + } + + @Test + public void testGetStrategy() { + ShardStrategy strategy = factory.getStrategy(TestModel.TEST_PATH); + assertNotNull(strategy); + } + + @Test + public void testGetStrategyForKnownModuleName() { + ShardStrategy strategy = factory.getStrategy(YangInstanceIdentifier.of(CarsModel.BASE_QNAME)); + assertTrue(strategy instanceof ModuleShardStrategy); + } + + @Test + public void testGetStrategyNullPointerExceptionWhenPathIsNull() { + final NullPointerException ex = assertThrows(NullPointerException.class, () -> factory.getStrategy(null)); + assertEquals("path should not be null", ex.getMessage()); + } +}