2 * Copyright (c) 2015, 2016 Inocybe 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
9 package org.opendaylight.ovsdb.openstack.netvirt;
11 import static org.junit.Assert.assertEquals;
12 import static org.mockito.Matchers.any;
13 import static org.mockito.Mockito.mock;
14 import static org.mockito.Mockito.times;
15 import static org.mockito.Mockito.verify;
16 import static org.mockito.Mockito.verifyNoMoreInteractions;
18 import java.net.HttpURLConnection;
20 import org.junit.Before;
21 import org.junit.Test;
22 import org.junit.runner.RunWith;
23 import org.mockito.InjectMocks;
24 import org.mockito.Mockito;
25 import org.mockito.runners.MockitoJUnitRunner;
26 import org.opendaylight.ovsdb.openstack.netvirt.api.EventDispatcher;
27 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronFirewall;
28 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronFirewallPolicy;
29 import org.opendaylight.ovsdb.openstack.netvirt.translator.NeutronFirewallRule;
30 import org.opendaylight.ovsdb.utils.servicehelper.ServiceHelper;
31 import org.osgi.framework.ServiceReference;
35 * Unit test for {@link FWaasHandler}
37 @RunWith(MockitoJUnitRunner.class)
38 public class FWaasHandlerTest {
40 @InjectMocks FWaasHandler fwaasHandler;
44 fwaasHandler = mock(FWaasHandler.class, Mockito.CALLS_REAL_METHODS);
48 public void testCanCreateNeutronFirewall(){
49 assertEquals("Error, canCreateNeutronFirewall() did not return the correct value ", HttpURLConnection.HTTP_CREATED, fwaasHandler.canCreateNeutronFirewall(any(NeutronFirewall.class)));
53 public void testNeutronFirewallCreated(){
54 verifyNoMoreInteractions(fwaasHandler);
55 fwaasHandler.canCreateNeutronFirewall(mock(NeutronFirewall.class));
56 verify(fwaasHandler, times(1)).canCreateNeutronFirewall(any(NeutronFirewall.class));
60 public void testCanUpdateNeutronFirewall(){
61 assertEquals("Error, canUpdateNeutronFirewall() did not return the correct value ", HttpURLConnection.HTTP_OK, fwaasHandler.canUpdateNeutronFirewall(any(NeutronFirewall.class), any(NeutronFirewall.class)));
65 public void testCanDeleteNeutronFirewall(){
66 assertEquals("Error, canDeleteNeutronFirewall() did not return the correct value ", HttpURLConnection.HTTP_OK, fwaasHandler.canDeleteNeutronFirewall(any(NeutronFirewall.class)));
70 public void testNeutronFirewallDeleted(){
71 verifyNoMoreInteractions(fwaasHandler);
72 fwaasHandler.neutronFirewallDeleted(mock(NeutronFirewall.class));
73 verify(fwaasHandler, times(1)).canDeleteNeutronFirewall(any(NeutronFirewall.class));
77 public void testCanCreateNeutronFirewallRule(){
78 assertEquals("Error, canCreateNeutronFirewallRule() did not return the correct value ", HttpURLConnection.HTTP_CREATED, fwaasHandler.canCreateNeutronFirewallRule(any(NeutronFirewallRule.class)));
82 public void testNeutronFirewallRuleCreated(){
83 verifyNoMoreInteractions(fwaasHandler);
84 fwaasHandler.neutronFirewallRuleCreated(mock(NeutronFirewallRule.class));
85 verify(fwaasHandler, times(1)).canCreateNeutronFirewallRule(any(NeutronFirewallRule.class));
89 public void testCanUpdateNeutronFirewallRule(){
90 assertEquals("Error, canUpdateNeutronFirewallRule() did not return the correct value ", HttpURLConnection.HTTP_OK, fwaasHandler.canUpdateNeutronFirewallRule(any(NeutronFirewallRule.class), any(NeutronFirewallRule.class)));
94 public void testCanDeleteNeutronFirewallRule(){
95 assertEquals("Error, canDeleteNeutronFirewallRule() did not return the correct value ", HttpURLConnection.HTTP_OK, fwaasHandler.canDeleteNeutronFirewallRule(any(NeutronFirewallRule.class)));
99 public void testNeutronFirewallRuleDeleted(){
100 verifyNoMoreInteractions(fwaasHandler);
101 fwaasHandler.neutronFirewallRuleDeleted(mock(NeutronFirewallRule.class));
102 verify(fwaasHandler, times(1)).canDeleteNeutronFirewallRule(any(NeutronFirewallRule.class));
106 public void testCanCreateNeutronFirewallPolicy(){
107 assertEquals("Error, canCreateNeutronFirewallPolicy() did not return the correct value ", HttpURLConnection.HTTP_CREATED, fwaasHandler.canCreateNeutronFirewallPolicy(any(NeutronFirewallPolicy.class)));
111 public void testNeutronFirewallPolicyCreated(){
112 verifyNoMoreInteractions(fwaasHandler);
113 fwaasHandler.neutronFirewallPolicyCreated(mock(NeutronFirewallPolicy.class));
114 verify(fwaasHandler, times(1)).canCreateNeutronFirewallPolicy(any(NeutronFirewallPolicy.class));
118 public void testCanUpdateNeutronFirewallPolicy(){
119 assertEquals("Error, canUpdateNeutronFirewallPolicy() did not return the correct value ", HttpURLConnection.HTTP_OK, fwaasHandler.canUpdateNeutronFirewallPolicy(any(NeutronFirewallPolicy.class), any(NeutronFirewallPolicy.class)));
123 public void testCanDeleteNeutronFirewallPolicy(){
124 assertEquals("Error, canDeleteNeutronFirewallPolicy() did not return the correct value ", HttpURLConnection.HTTP_OK, fwaasHandler.canDeleteNeutronFirewallPolicy(any(NeutronFirewallPolicy.class)));
128 public void testNeutronFirewallPolicyDeleted(){
129 verifyNoMoreInteractions(fwaasHandler);
130 fwaasHandler.neutronFirewallPolicyDeleted(mock(NeutronFirewallPolicy.class));
131 verify(fwaasHandler, times(1)).canDeleteNeutronFirewallPolicy(any(NeutronFirewallPolicy.class));
135 public void testProcessEvent(){
137 // no yet implemented
138 // NorthboundEvent ev = mock(NorthboundEvent.class);
139 // when(ev.getAction()).thenReturn(Action.ADD);
140 // fwaasHandler.processEvent(ev);
144 public void testSetDependencies() {
145 EventDispatcher eventDispatcher = mock(EventDispatcher.class);
147 ServiceHelper.overrideGlobalInstance(EventDispatcher.class, eventDispatcher);
149 fwaasHandler.setDependencies(mock(ServiceReference.class));
151 assertEquals("Error, did not return the correct object", fwaasHandler.eventDispatcher, eventDispatcher);