You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by ra...@apache.org on 2014/12/04 19:31:44 UTC

stratos git commit: unit test - neutron networking api

Repository: stratos
Updated Branches:
  refs/heads/master ba5c3ca38 -> 3ff88d908


unit test - neutron networking api


Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/3ff88d90
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/3ff88d90
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/3ff88d90

Branch: refs/heads/master
Commit: 3ff88d908bd47b89924ab1ce6ab65b6afac50f3d
Parents: ba5c3ca
Author: R-Rajkumar <rr...@gmail.com>
Authored: Fri Dec 5 00:01:26 2014 +0530
Committer: R-Rajkumar <rr...@gmail.com>
Committed: Fri Dec 5 00:01:26 2014 +0530

----------------------------------------------------------------------
 .../networking/NeutronNetworkingApiTest.java    | 125 +++++++++++++++++++
 1 file changed, 125 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/3ff88d90/components/org.apache.stratos.cloud.controller/src/test/java/org/apache/stratos/cloud/controller/iaases/openstack/networking/NeutronNetworkingApiTest.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.cloud.controller/src/test/java/org/apache/stratos/cloud/controller/iaases/openstack/networking/NeutronNetworkingApiTest.java b/components/org.apache.stratos.cloud.controller/src/test/java/org/apache/stratos/cloud/controller/iaases/openstack/networking/NeutronNetworkingApiTest.java
new file mode 100644
index 0000000..4b90add
--- /dev/null
+++ b/components/org.apache.stratos.cloud.controller/src/test/java/org/apache/stratos/cloud/controller/iaases/openstack/networking/NeutronNetworkingApiTest.java
@@ -0,0 +1,125 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.stratos.cloud.controller.iaases.openstack.networking;
+
+import java.util.List;
+import java.util.Map;
+
+import org.apache.stratos.cloud.controller.iaases.openstack.networking.NeutronNetworkingApi;
+import org.apache.stratos.cloud.controller.domain.FloatingNetwork;
+import org.apache.stratos.cloud.controller.domain.FloatingNetworks;
+import org.apache.stratos.cloud.controller.domain.IaasProvider;
+import org.apache.stratos.cloud.controller.domain.NetworkInterface;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+
+import junit.framework.TestCase;
+
+public class NeutronNetworkingApiTest extends TestCase {
+	
+	private IaasProvider iaasProvider;
+	private NeutronNetworkingApi neutronNetworkingApi;
+	private NetworkInterface[] networkInterfaces;
+	private String validationError;
+	
+	@Before
+	public void setUp() {
+		iaasProvider = new IaasProvider();
+		neutronNetworkingApi = new NeutronNetworkingApi(iaasProvider);
+		validationError = "Neutron Networking Api validation failed";
+		
+		FloatingNetwork floatingNetwork_1 = new FloatingNetwork();
+		floatingNetwork_1.setName("externalOne");
+		floatingNetwork_1.setNetworkUuid("ba667f72-7ba8-4b24-b360-b74a0211c83c");
+		
+		FloatingNetwork floatingNetwork_2 = new FloatingNetwork();
+		floatingNetwork_2.setName("externalTwo");
+		floatingNetwork_2.setFloatingIP("192.168.16.59");
+		
+		FloatingNetwork floatingNetwork_3 = new FloatingNetwork();
+		floatingNetwork_3.setName("externalThree");
+		floatingNetwork_3.setNetworkUuid("er667f72-7ba8-4b24-b360-b74a0211c83c");
+		floatingNetwork_3.setFloatingIP("192.165.198.12");
+		
+		FloatingNetwork floatingNetwork_4 = new FloatingNetwork();
+		floatingNetwork_4.setName("externalFour");
+		floatingNetwork_4.setNetworkUuid("b3607ba8-7ba8-4b24-b360-b74a0211c83c");
+		
+		FloatingNetworks floatingNetworks_1 = new FloatingNetworks();
+		floatingNetworks_1.setFloatingNetworks(new FloatingNetwork[]{floatingNetwork_1});
+		
+		FloatingNetworks floatingNetworks_2 = new FloatingNetworks();
+		floatingNetworks_2.setFloatingNetworks(new FloatingNetwork[]{floatingNetwork_2, floatingNetwork_4});
+		
+		FloatingNetworks floatingNetworks_3 = new FloatingNetworks();
+		floatingNetworks_3.setFloatingNetworks(new FloatingNetwork[]{floatingNetwork_1, floatingNetwork_4});
+		
+		FloatingNetworks floatingNetworks_4 = new FloatingNetworks();
+		floatingNetworks_4.setFloatingNetworks(new FloatingNetwork[]{floatingNetwork_1, floatingNetwork_3, 
+				floatingNetwork_4});
+		
+		NetworkInterface networkInterface_1 = new NetworkInterface();
+		networkInterface_1.setNetworkUuid("512e1f54-1e85-4dac-b2e6-f0b30fc552cf");
+		networkInterface_1.setFloatingNetworks(floatingNetworks_1);
+		
+		NetworkInterface networkInterface_2 = new NetworkInterface();
+		networkInterface_2.setNetworkUuid("68aab21d-fc9a-4c2f-8d15-b1e41f6f7bb8");
+		networkInterface_2.setFloatingNetworks(floatingNetworks_2);
+		
+		NetworkInterface networkInterface_3 = new NetworkInterface();
+		networkInterface_3.setNetworkUuid("b55f009a-1cc6-4b17-924f-4ae0ee18db5e");
+		networkInterface_3.setFloatingNetworks(floatingNetworks_3);
+		
+		NetworkInterface networkInterface_4 = new NetworkInterface();
+		networkInterface_4.setPortUuid("d343d343-1cc6-4b17-924f-4ae0ee18db5e");
+		networkInterface_4.setFixedIp("10.5.62.3");
+		networkInterface_4.setFloatingNetworks(floatingNetworks_4);
+		
+		networkInterfaces = new NetworkInterface[]{networkInterface_1, networkInterface_2, networkInterface_3, 
+				networkInterface_4};
+	}
+	
+	@Test
+	public void testGetAllPredefinedFloatingIPs() throws Exception { 
+		List<String> allPredefinedFlotaingIPs = neutronNetworkingApi.getAllPredefinedFloatingIPs(networkInterfaces);
+		Assert.assertEquals(String.format("%s. Predefined floating IP count not valid", validationError), 1, 
+				allPredefinedFlotaingIPs.size());
+		Assert.assertTrue(String.format("%s. Predefined floating IP not returned", validationError), 
+				allPredefinedFlotaingIPs.contains("192.168.16.59"));
+	}
+	
+	@Test
+	public void testGetNetworkUuidToFloatingNetworksMap() throws Exception { 
+		Map<String, List<FloatingNetwork>> networkInterfaceToFloatingNetworksMap = 
+				neutronNetworkingApi.getNetworkUuidToFloatingNetworksMap(networkInterfaces);
+		
+		Assert.assertEquals(String.format("%s. Network interfaces count not valid", validationError), 3, 
+				networkInterfaceToFloatingNetworksMap.size());
+	}
+	
+	@Test
+	public void testGetFixedIPToFloatingNetworksMap() throws Exception { 
+		Map<String, List<FloatingNetwork>> fixedIPToFloatingNetworksMap = 
+				neutronNetworkingApi.getFixedIPToFloatingNetworksMap(networkInterfaces);
+		
+		Assert.assertEquals(String.format("%s. Network interfaces count not valid", validationError), 1, 
+				fixedIPToFloatingNetworksMap.size());
+	}
+}
\ No newline at end of file