6a7c3b7e774490a8e4e1bea2a41fd8188fa6321f
[honeycomb.git] / lisp / lisp2vpp / src / test / java / io / fd / honeycomb / lisp / translate / read / trait / MappingFilterProviderTest.java
1 package io.fd.honeycomb.lisp.translate.read.trait;
2
3
4 import static org.junit.Assert.assertEquals;
5
6 import org.junit.Before;
7 import org.junit.Test;
8 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.lisp.rev160520.dp.subtable.grouping.LocalMappings;
9 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.lisp.rev160520.dp.subtable.grouping.RemoteMappings;
10 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.lisp.rev160520.dp.subtable.grouping.local.mappings.LocalMapping;
11 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.lisp.rev160520.dp.subtable.grouping.remote.mappings.RemoteMapping;
12 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.lisp.rev160520.eid.table.grouping.eid.table.vni.table.BridgeDomainSubtable;
13 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.lisp.rev160520.eid.table.grouping.eid.table.vni.table.VrfSubtable;
14 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
15
16 public class MappingFilterProviderTest implements MappingFilterProvider {
17
18     private InstanceIdentifier<LocalMapping> validVrfLocal;
19     private InstanceIdentifier<LocalMapping> validBdLocal;
20     private InstanceIdentifier<LocalMapping> invalidLocal;
21
22     private InstanceIdentifier<RemoteMapping> validVrfRemote;
23     private InstanceIdentifier<RemoteMapping> validBdRemote;
24     private InstanceIdentifier<RemoteMapping> invalidRemote;
25
26
27     @Before
28     public void init() {
29         validVrfLocal = InstanceIdentifier.create(VrfSubtable.class)
30                 .child(LocalMappings.class)
31                 .child(LocalMapping.class);
32
33         validBdLocal = InstanceIdentifier.create(BridgeDomainSubtable.class)
34                 .child(LocalMappings.class)
35                 .child(LocalMapping.class);
36
37         invalidLocal = InstanceIdentifier.create(LocalMapping.class);
38
39         validVrfRemote = InstanceIdentifier.create(VrfSubtable.class)
40                 .child(RemoteMappings.class)
41                 .child(RemoteMapping.class);
42
43         validBdRemote = InstanceIdentifier.create(BridgeDomainSubtable.class)
44                 .child(RemoteMappings.class)
45                 .child(RemoteMapping.class);
46
47         invalidRemote = InstanceIdentifier.create(RemoteMapping.class);
48     }
49
50     @Test
51     public void testVrfLocalValid() {
52         assertEquals(VRF_MAPPINGS_ONLY, subtableFilterForLocalMappings(validVrfLocal));
53     }
54
55     @Test
56     public void testBridgeDomainLocalValid() {
57         assertEquals(BRIDGE_DOMAIN_MAPPINGS_ONLY, subtableFilterForLocalMappings(validBdLocal));
58     }
59
60     @Test(expected = IllegalArgumentException.class)
61     public void testLocalInvalid() {
62         subtableFilterForLocalMappings(invalidLocal);
63     }
64
65     @Test
66     public void testVrfRemoteValid() {
67         assertEquals(VRF_MAPPINGS_ONLY, subtableFilterForRemoteMappings(validVrfRemote));
68     }
69
70     @Test
71     public void testBridgeDomainRemoteValid() {
72         assertEquals(BRIDGE_DOMAIN_MAPPINGS_ONLY, subtableFilterForRemoteMappings(validBdRemote));
73     }
74
75     @Test(expected = IllegalArgumentException.class)
76     public void testRemoteInvalid() {
77         subtableFilterForRemoteMappings(invalidRemote);
78     }
79 }