2 * Copyright (c) 2016 Cisco Systems Inc and others. All rights reserved.
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
8 package org.opendaylight.unimgr.mef.nrp.cisco.xr.l2vpn.helper;
10 import static org.junit.Assert.assertEquals;
11 import static org.junit.Assert.assertNotNull;
13 import java.util.LinkedList;
14 import java.util.List;
15 import org.junit.Test;
16 import org.mockito.Mockito;
17 import org.opendaylight.yang.gen.v1.http.cisco.com.ns.yang.cisco.ios.xr.l2vpn.cfg.rev151109.l2vpn.database.XconnectGroups;
18 import org.opendaylight.yang.gen.v1.http.cisco.com.ns.yang.cisco.ios.xr.l2vpn.cfg.rev151109.l2vpn.database.xconnect.groups.XconnectGroup;
19 import org.opendaylight.yang.gen.v1.http.cisco.com.ns.yang.cisco.ios.xr.l2vpn.cfg.rev151109.l2vpn.database.xconnect.groups.xconnect.group.P2pXconnects;
20 import org.opendaylight.yang.gen.v1.http.cisco.com.ns.yang.cisco.ios.xr.l2vpn.cfg.rev151109.l2vpn.database.xconnect.groups.xconnect.group.p2p.xconnects.P2pXconnect;
21 import org.opendaylight.yang.gen.v1.http.cisco.com.ns.yang.cisco.ios.xr.l2vpn.cfg.rev151109.l2vpn.database.xconnect.groups.xconnect.group.p2p.xconnects.p2p.xconnect.AttachmentCircuits;
22 import org.opendaylight.yang.gen.v1.http.cisco.com.ns.yang.cisco.ios.xr.l2vpn.cfg.rev151109.l2vpn.database.xconnect.groups.xconnect.group.p2p.xconnects.p2p.xconnect.Pseudowires;
26 * @author krzysztof.bijakowski@amartus.com
28 public class XConnectHelperTest {
31 public void testCreateXConnectGroupsSingle() {
33 XconnectGroup xconnectGroup = Mockito.mock(XconnectGroup.class);
36 XconnectGroups xconnectGroups = XConnectHelper.createXConnectGroups(xconnectGroup);
39 assertNotNull(xconnectGroups);
41 List<XconnectGroup> xconnectGroupList = xconnectGroups.getXconnectGroup();
42 assertNotNull(xconnectGroupList);
43 assertEquals(1, xconnectGroupList.size());
45 assertEquals(xconnectGroup, xconnectGroupList.get(0));
50 public void testCreateXConnectGroupsMultiple() {
52 List<XconnectGroup> xconnectGroupList = new LinkedList<>();
53 xconnectGroupList.add(Mockito.mock(XconnectGroup.class));
54 xconnectGroupList.add(Mockito.mock(XconnectGroup.class));
57 XconnectGroups xconnectGroups = XConnectHelper.createXConnectGroups(xconnectGroupList);
60 assertNotNull(xconnectGroups);
61 assertEquals(xconnectGroupList, xconnectGroups.getXconnectGroup());
65 public void testBuild() {
67 String xconnectName = "ExampleXConnectName";
68 String xconnectGroupName = "ExampleXConnectGroupName";
69 AttachmentCircuits attachmentCircuits = Mockito.mock(AttachmentCircuits.class);
70 Pseudowires pseudowires = Mockito.mock(Pseudowires.class);
73 XconnectGroup xconnectGroup = new XConnectHelper().appendXConnect(
76 pseudowires).build(xconnectGroupName);
79 assertNotNull(xconnectGroup);
80 assertEquals(xconnectGroupName, xconnectGroup.getName().getValue());
81 assertEquals(xconnectGroupName, xconnectGroup.key().getName().getValue());
83 P2pXconnects p2pXconnects = xconnectGroup.getP2pXconnects();
84 assertEquals(p2pXconnects, xconnectGroup.getP2pXconnects());
85 assertNotNull(p2pXconnects);
87 List<P2pXconnect> p2pXconnectList = p2pXconnects.getP2pXconnect();
88 assertNotNull(p2pXconnectList);
89 assertEquals(1, p2pXconnectList.size());
91 P2pXconnect p2pXconnect = p2pXconnectList.get(0);
92 assertNotNull(p2pXconnect);
93 assertEquals(xconnectName, p2pXconnect.getName().getValue());
94 assertEquals(pseudowires, p2pXconnect.getPseudowires());
95 assertEquals(attachmentCircuits, p2pXconnect.getAttachmentCircuits());