Remove redundant names in paths
[netvirt.git] / fibmanager / impl / src / test / java / org / opendaylight / netvirt / fibmanager / test / FibManagerTest.java
1 /*
2  * Copyright © 2015, 2017 Ericsson India Global Services Pvt Ltd. and others. All rights reserved.
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6  * and is available at http://www.eclipse.org/legal/epl-v10.html
7  */
8 package org.opendaylight.netvirt.fibmanager.test;
9
10 import static org.mockito.Mockito.when;
11
12 import java.math.BigInteger;
13 import org.junit.Before;
14 import org.junit.Test;
15 import org.junit.runner.RunWith;
16 import org.mockito.Mock;
17 import org.mockito.runners.MockitoJUnitRunner;
18 import org.opendaylight.controller.md.sal.binding.api.DataBroker;
19 import org.opendaylight.controller.md.sal.binding.api.ReadOnlyTransaction;
20 import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
21 import org.opendaylight.genius.mdsalutil.interfaces.IMdsalApiManager;
22 import org.opendaylight.netvirt.fibmanager.VrfEntryListener;
23 import org.opendaylight.netvirt.fibmanager.api.FibHelper;
24 import org.opendaylight.netvirt.fibmanager.api.RouteOrigin;
25 import org.opendaylight.netvirt.vpnmanager.api.IVpnManager;
26 import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.fibmanager.rev150330.FibEntries;
27 import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.fibmanager.rev150330.fibentries.VrfTables;
28 import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.fibmanager.rev150330.fibentries.VrfTablesKey;
29 import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.fibmanager.rev150330.vrfentries.VrfEntry;
30 import org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.fibmanager.rev150330.vrfentries.VrfEntryKey;
31 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
32 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier.InstanceIdentifierBuilder;
33
34 @RunWith(MockitoJUnitRunner.class)
35 public class FibManagerTest {
36
37     @Mock
38     DataBroker dataBroker;
39     @Mock
40     ReadOnlyTransaction mockReadTx;
41     @Mock
42     WriteTransaction mockWriteTx;
43     @Mock
44     IMdsalApiManager mdsalManager;
45     @Mock
46     IVpnManager vpnmanager;
47     @Mock
48     VrfTablesKey vrfTableKey;
49
50     VrfEntryListener fibmgr;
51     private static final Long EGRESS_POINTER = 11L;
52     VrfEntry vrfEntry;
53     InstanceIdentifier<VrfEntry> identifier;
54     private static final String TEST_VPN_INSTANCE_NAME = "95486250-4ad7-418f-9030-2df37f98ad24";
55     private static final String TEST_RD = "100:1";
56     private static final String PREFIX = "1.1.2.3";
57     private static final String NEXTHOP = "1.1.1.1";
58     private static final int LABEL = 10;
59     RouteOrigin origin = RouteOrigin.STATIC;
60     BigInteger dpn;
61     private static final long VPN_ID = 101L;
62     private static final long VPN_INTF_CNT = 2;
63     private static final Boolean IS_CLEANUP_COMPLETE = Boolean.FALSE;
64
65     private void setupMocks() {
66         dpn = BigInteger.valueOf(100000L);
67         identifier = buildVrfEntryId(TEST_RD, PREFIX);
68         vrfEntry = FibHelper.getVrfEntryBuilder(PREFIX, LABEL, NEXTHOP, origin, null).build();
69         when(vrfTableKey.getRouteDistinguisher()).thenReturn(TEST_RD);
70     }
71
72     @Before
73     public void setUp() throws Exception {
74         setupMocks();
75     }
76
77     @Test
78     public void testAdd() {
79         //fibmgr.onDataChanged(dataChangeEvent);
80         //Mockito.verify(mdsalManager, Mockito.times(2)).installFlow(any(FlowEntity.class));
81     }
82
83     public static InstanceIdentifier<VrfTables> buildVrfTableId(String rd) {
84         InstanceIdentifierBuilder<VrfTables> idBuilder =
85             InstanceIdentifier.builder(FibEntries.class).child(VrfTables.class, new VrfTablesKey(rd));
86         InstanceIdentifier<VrfTables> vrfTableId = idBuilder.build();
87         return vrfTableId;
88     }
89
90     public static InstanceIdentifier<VrfEntry> buildVrfEntryId(String rd, String prefix) {
91         InstanceIdentifierBuilder<VrfEntry> idBuilder =
92             InstanceIdentifier.builder(FibEntries.class).child(VrfTables.class, new VrfTablesKey(rd))
93                 .child(VrfEntry.class, new VrfEntryKey(prefix));
94         InstanceIdentifier<VrfEntry> vrfEntryId = idBuilder.build();
95         return vrfEntryId;
96     }
97 }