1 /*******************************************************************************
2 * Copyright (c) 2013 Hewlett-Packard Development Company, L.P.
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Eclipse Public License v1.0
5 * which accompanies this distribution, and is available at
6 * http://www.eclipse.org/legal/epl-v10.html
9 * Dave Tucker (HP) - Added unit tests for the NetworkHandler class.
10 *******************************************************************************/
12 package org.opendaylight.ovsdb.neutron;
14 import static org.junit.Assert.assertEquals;
15 import static org.mockito.Mockito.mock;
16 import static org.mockito.Mockito.spy;
17 import static org.mockito.Mockito.verify;
18 import static org.mockito.Mockito.when;
20 import java.net.HttpURLConnection;
22 import org.junit.Test;
23 import org.junit.runner.RunWith;
24 import org.opendaylight.controller.networkconfig.neutron.NeutronNetwork;
25 import org.powermock.core.classloader.annotations.PrepareForTest;
26 import org.powermock.modules.junit4.PowerMockRunner;
27 import org.powermock.reflect.Whitebox;
29 @RunWith(PowerMockRunner.class)
30 @PrepareForTest(TenantNetworkManager.class)
32 public class NetworkHandlerTest {
34 NetworkHandler testNetworkHandler = new NetworkHandler();
37 public void testCanCreateNetwork() throws Exception {
38 NeutronNetwork mockNet = mock(NeutronNetwork.class);
40 when(mockNet.isShared())
44 assertEquals(HttpURLConnection.HTTP_NOT_ACCEPTABLE, testNetworkHandler.canCreateNetwork(mockNet));
45 assertEquals(HttpURLConnection.HTTP_CREATED, testNetworkHandler.canCreateNetwork(mockNet));
50 public void testCanUpdateNetwork() {
51 NeutronNetwork delta = new NeutronNetwork();
52 NeutronNetwork original = new NeutronNetwork();
54 assertEquals(HttpURLConnection.HTTP_OK, testNetworkHandler.canUpdateNetwork(delta, original));
58 public void testCanDeleteNetwork() throws Exception {
59 NeutronNetwork network = new NeutronNetwork();
61 assertEquals(HttpURLConnection.HTTP_OK, testNetworkHandler.canDeleteNetwork(network));
65 public void testNeutronNetworkDeleted() throws Exception {
66 String netId = "6cfdb7";
68 NeutronNetwork mockNet = mock(NeutronNetwork.class);
69 when(mockNet.isShared()).thenReturn(false);
70 when(mockNet.getID()).thenReturn(netId);
72 NetworkHandler spy = spy(testNetworkHandler);
74 TenantNetworkManager tenantNetworkManager = mock(TenantNetworkManager.class);
75 Whitebox.setInternalState(TenantNetworkManager.class, "tenantHelper", tenantNetworkManager);
77 when(spy.canDeleteNetwork(mockNet))
78 .thenReturn(HttpURLConnection.HTTP_BAD_REQUEST)
79 .thenCallRealMethod();
81 spy.neutronNetworkDeleted(mockNet);
82 spy.neutronNetworkDeleted(mockNet);
84 verify(tenantNetworkManager).networkDeleted(netId);