/* * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ package org.opendaylight.groupbasedpolicy.renderer.vpp.policy.acl; import java.util.List; import org.junit.Assert; import org.junit.Before; import org.junit.Test; import org.mockito.Mockito; import org.opendaylight.groupbasedpolicy.renderer.vpp.policy.acl.AccessListUtil.ACE_DIRECTION; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.access.control.list.rev160708.access.lists.Acl; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.interfaces.rev140508.interfaces.InterfaceKey; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.vpp.acl.rev161214.VppAcl; import com.google.common.collect.ImmutableList; public class AccessListWrapperTest { private GbpAceBuilder rule1; @Before public void init() { rule1 = Mockito.mock(GbpAceBuilder.class); } @Test public void testGetDirection_ingress() { AccessListWrapper aclWrapper = new IngressAccessListWrapper(); Assert.assertEquals(ACE_DIRECTION.INGRESS, aclWrapper.getDirection()); aclWrapper = new EgressAccessListWrapper(); Assert.assertEquals(ACE_DIRECTION.EGRESS, aclWrapper.getDirection()); } @Test public void writeRulesTest() { AccessListWrapper aclWrapper = new IngressAccessListWrapper(); List<GbpAceBuilder> rules = ImmutableList.of(rule1); aclWrapper.writeRules(rules); Assert.assertEquals(rule1, aclWrapper.readRules().get(0)); Assert.assertEquals(1, aclWrapper.readRules().size()); } @Test public void buildVppAclTest() { AccessListWrapper aclWrapper = new IngressAccessListWrapper(); aclWrapper.writeRule(rule1); String key1 = "key1"; Acl acl = aclWrapper.buildVppAcl(new InterfaceKey(key1)); Assert.assertEquals(VppAcl.class, acl.getAclType()); Assert.assertEquals(key1 + ACE_DIRECTION.INGRESS, acl.getAclName()); Assert.assertEquals(1, acl.getAccessListEntries().getAce().size()); } }