Update .gitreview for new repo
[netvirt.git] / openstack / net-virt / src / test / java / org / opendaylight / ovsdb / openstack / netvirt / FWaasHandlerTest.java
1 /*
2  * Copyright (c) 2015, 2016 Inocybe 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
9 package org.opendaylight.ovsdb.openstack.netvirt;
10
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;
17
18 import java.net.HttpURLConnection;
19
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;
32
33
34 /**
35  * Unit test for {@link FWaasHandler}
36  */
37 @RunWith(MockitoJUnitRunner.class)
38 public class FWaasHandlerTest {
39
40     @InjectMocks FWaasHandler fwaasHandler;
41
42     @Before
43     public void setUp() {
44         fwaasHandler = mock(FWaasHandler.class, Mockito.CALLS_REAL_METHODS);
45     }
46
47     @Test
48     public void testCanCreateNeutronFirewall(){
49         assertEquals("Error, canCreateNeutronFirewall() did not return the correct value ", HttpURLConnection.HTTP_CREATED, fwaasHandler.canCreateNeutronFirewall(any(NeutronFirewall.class)));
50     }
51
52     @Test
53     public void testNeutronFirewallCreated(){
54         verifyNoMoreInteractions(fwaasHandler);
55         fwaasHandler.canCreateNeutronFirewall(mock(NeutronFirewall.class));
56         verify(fwaasHandler, times(1)).canCreateNeutronFirewall(any(NeutronFirewall.class));
57     }
58
59     @Test
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)));
62     }
63
64     @Test
65     public void testCanDeleteNeutronFirewall(){
66         assertEquals("Error, canDeleteNeutronFirewall() did not return the correct value ", HttpURLConnection.HTTP_OK, fwaasHandler.canDeleteNeutronFirewall(any(NeutronFirewall.class)));
67     }
68
69     @Test
70     public void testNeutronFirewallDeleted(){
71         verifyNoMoreInteractions(fwaasHandler);
72         fwaasHandler.neutronFirewallDeleted(mock(NeutronFirewall.class));
73         verify(fwaasHandler, times(1)).canDeleteNeutronFirewall(any(NeutronFirewall.class));
74     }
75
76     @Test
77     public void testCanCreateNeutronFirewallRule(){
78         assertEquals("Error, canCreateNeutronFirewallRule() did not return the correct value ", HttpURLConnection.HTTP_CREATED, fwaasHandler.canCreateNeutronFirewallRule(any(NeutronFirewallRule.class)));
79     }
80
81     @Test
82     public void testNeutronFirewallRuleCreated(){
83         verifyNoMoreInteractions(fwaasHandler);
84         fwaasHandler.neutronFirewallRuleCreated(mock(NeutronFirewallRule.class));
85         verify(fwaasHandler, times(1)).canCreateNeutronFirewallRule(any(NeutronFirewallRule.class));
86     }
87
88     @Test
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)));
91     }
92
93     @Test
94     public void testCanDeleteNeutronFirewallRule(){
95         assertEquals("Error, canDeleteNeutronFirewallRule() did not return the correct value ", HttpURLConnection.HTTP_OK, fwaasHandler.canDeleteNeutronFirewallRule(any(NeutronFirewallRule.class)));
96     }
97
98     @Test
99     public void testNeutronFirewallRuleDeleted(){
100         verifyNoMoreInteractions(fwaasHandler);
101         fwaasHandler.neutronFirewallRuleDeleted(mock(NeutronFirewallRule.class));
102         verify(fwaasHandler, times(1)).canDeleteNeutronFirewallRule(any(NeutronFirewallRule.class));
103     }
104
105     @Test
106     public void testCanCreateNeutronFirewallPolicy(){
107         assertEquals("Error, canCreateNeutronFirewallPolicy() did not return the correct value ", HttpURLConnection.HTTP_CREATED, fwaasHandler.canCreateNeutronFirewallPolicy(any(NeutronFirewallPolicy.class)));
108     }
109
110     @Test
111     public void testNeutronFirewallPolicyCreated(){
112         verifyNoMoreInteractions(fwaasHandler);
113         fwaasHandler.neutronFirewallPolicyCreated(mock(NeutronFirewallPolicy.class));
114         verify(fwaasHandler, times(1)).canCreateNeutronFirewallPolicy(any(NeutronFirewallPolicy.class));
115     }
116
117     @Test
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)));
120     }
121
122     @Test
123     public void testCanDeleteNeutronFirewallPolicy(){
124         assertEquals("Error, canDeleteNeutronFirewallPolicy() did not return the correct value ", HttpURLConnection.HTTP_OK, fwaasHandler.canDeleteNeutronFirewallPolicy(any(NeutronFirewallPolicy.class)));
125     }
126
127     @Test
128     public void testNeutronFirewallPolicyDeleted(){
129         verifyNoMoreInteractions(fwaasHandler);
130         fwaasHandler.neutronFirewallPolicyDeleted(mock(NeutronFirewallPolicy.class));
131         verify(fwaasHandler, times(1)).canDeleteNeutronFirewallPolicy(any(NeutronFirewallPolicy.class));
132     }
133
134     @Test
135     public void testProcessEvent(){
136         // TODO
137         // no yet implemented
138 //        NorthboundEvent ev = mock(NorthboundEvent.class);
139 //        when(ev.getAction()).thenReturn(Action.ADD);
140 //        fwaasHandler.processEvent(ev);
141     }
142
143     @Test
144     public void testSetDependencies() {
145         EventDispatcher eventDispatcher = mock(EventDispatcher.class);
146
147         ServiceHelper.overrideGlobalInstance(EventDispatcher.class, eventDispatcher);
148
149         fwaasHandler.setDependencies(mock(ServiceReference.class));
150
151         assertEquals("Error, did not return the correct object", fwaasHandler.eventDispatcher, eventDispatcher);
152     }
153 }