afc060318ce783a8a8041e4b38c008181df3e16f
[controller.git] / opendaylight / md-sal / sal-distributed-datastore / src / test / java / org / opendaylight / controller / cluster / datastore / ConfigurationImplTest.java
1 package org.opendaylight.controller.cluster.datastore;
2
3 import static org.junit.Assert.assertEquals;
4 import static org.junit.Assert.assertFalse;
5 import static org.junit.Assert.assertTrue;
6 import com.typesafe.config.ConfigFactory;
7 import java.io.File;
8 import java.util.List;
9 import java.util.Set;
10 import org.junit.Assert;
11 import org.junit.BeforeClass;
12 import org.junit.Test;
13
14 public class ConfigurationImplTest {
15
16     private static ConfigurationImpl configuration;
17
18     @BeforeClass
19     public static void staticSetup(){
20         configuration = new ConfigurationImpl("module-shards.conf", "modules.conf");
21     }
22
23     @Test
24     public void testConstructor(){
25         Assert.assertNotNull(configuration);
26     }
27
28     @Test
29     public void testGetMemberShardNames(){
30         List<String> memberShardNames =
31             configuration.getMemberShardNames("member-1");
32
33         assertTrue(memberShardNames.contains("people-1"));
34         assertTrue(memberShardNames.contains("cars-1"));
35
36         // Retrieve once again to hit cache
37
38         memberShardNames =
39             configuration.getMemberShardNames("member-1");
40
41         assertTrue(memberShardNames.contains("people-1"));
42         assertTrue(memberShardNames.contains("cars-1"));
43
44     }
45
46     @Test
47     public void testGetMembersFromShardName(){
48         List<String> members =
49             configuration.getMembersFromShardName("default");
50
51         assertEquals(3, members.size());
52
53         assertTrue(members.contains("member-1"));
54         assertTrue(members.contains("member-2"));
55         assertTrue(members.contains("member-3"));
56
57         assertFalse(members.contains("member-26"));
58
59         // Retrieve once again to hit cache
60         members =
61             configuration.getMembersFromShardName("default");
62
63         assertEquals(3, members.size());
64
65         assertTrue(members.contains("member-1"));
66         assertTrue(members.contains("member-2"));
67         assertTrue(members.contains("member-3"));
68
69         assertFalse(members.contains("member-26"));
70
71
72         // Try to find a shard which is not present
73
74         members =
75             configuration.getMembersFromShardName("foobar");
76
77         assertEquals(0, members.size());
78     }
79
80     @Test
81     public void testReadConfigurationFromFile(){
82         File f = new File("./module-shards.conf");
83         ConfigFactory.parseFile(f);
84     }
85
86     @Test
87     public void testGetAllShardNames(){
88         Set<String> allShardNames = configuration.getAllShardNames();
89
90         assertEquals(4, allShardNames.size());
91         assertTrue(allShardNames.contains("default"));
92         assertTrue(allShardNames.contains("people-1"));
93         assertTrue(allShardNames.contains("cars-1"));
94         assertTrue(allShardNames.contains("test-1"));
95     }
96 }