blob: 46ab02eb8a2f6b496a34c65cd9bb5e46639678a0 [file] [log] [blame]
Ayaka Koshibeabedb092014-10-20 17:01:31 -07001package org.onlab.onos.cluster;
Ayaka Koshibe67af1f42014-10-20 15:26:37 -07002
3import java.util.List;
4
5import org.junit.Test;
Ayaka Koshibe67af1f42014-10-20 15:26:37 -07006
7import com.google.common.collect.Lists;
8
9import static org.junit.Assert.assertEquals;
10import static org.junit.Assert.assertNotEquals;
11
12/**
13 * Test to check behavioral correctness of the RoleInfo structure.
14 */
15public class RoleInfoTest {
16 private static final NodeId N1 = new NodeId("n1");
17 private static final NodeId N2 = new NodeId("n2");
18 private static final NodeId N3 = new NodeId("n3");
19 private static final NodeId N4 = new NodeId("n4");
20
21 private static final List<NodeId> BKUP1 = Lists.newArrayList(N2, N3);
22 private static final List<NodeId> BKUP2 = Lists.newArrayList(N3, N4);
23
24 private static final RoleInfo RI1 = new RoleInfo(N1, BKUP1);
25 private static final RoleInfo RI2 = new RoleInfo(N1, BKUP2);
26 private static final RoleInfo RI3 = new RoleInfo(N2, BKUP1);
27
28 @Test
29 public void basics() {
30 assertEquals("wrong master", new NodeId("n1"), RI1.master());
Ayaka Koshibe67af1f42014-10-20 15:26:37 -070031 assertEquals("wrong Backups", RI1.backups(), Lists.newArrayList(N2, N3));
32
33 assertNotEquals("equals() broken", RI1, RI2);
34 assertNotEquals("equals() broken", RI1, RI3);
35
36 List<NodeId> bkup3 = Lists.newArrayList(N3, new NodeId("n4"));
37 assertEquals("equals() broken", new RoleInfo(N1, bkup3), RI2);
38 }
39}