migration to python3 (#1)

Change-Id: I964b75c1316b7711cde905c6e98ea027a8557047
Signed-off-by: peusterm <manuel.peuster@uni-paderborn.de>
diff --git a/src/emuvim/test/unittests/test_emulator.py b/src/emuvim/test/unittests/test_emulator.py
index fc06a69..ace24c1 100755
--- a/src/emuvim/test/unittests/test_emulator.py
+++ b/src/emuvim/test/unittests/test_emulator.py
@@ -138,14 +138,14 @@
         # check status
         # check get status
         s1 = self.dc[0].containers.get("vnf1").getStatus()
-        print s1
+        print(s1)
         self.assertTrue(s1["name"] == "vnf1")
         self.assertTrue(s1["state"]["Running"])
         self.assertTrue(s1["network"][0]['intf_name'] == 'intf1')
         self.assertTrue(s1["network"][0]['ip'] == '10.0.10.1/24')
 
         s2 = self.dc[1].containers.get("vnf2").getStatus()
-        print s2
+        print(s2)
         self.assertTrue(s2["name"] == "vnf2")
         self.assertTrue(s2["state"]["Running"])
         self.assertTrue(s2["network"][0]['intf_name'] == 'intf2')
@@ -192,14 +192,14 @@
         # check status
         # check get status
         s1 = self.dc[0].containers.get("vnf1").getStatus()
-        print s1
+        print(s1)
         self.assertTrue(s1["name"] == "vnf1")
         self.assertTrue(s1["state"]["Running"])
         self.assertTrue(s1["network"][0]['intf_name'] == 'intf1')
         self.assertTrue(s1["network"][0]['ip'] == '10.0.10.1/24')
 
         s2 = self.dc[1].containers.get("vnf2").getStatus()
-        print s2
+        print(s2)
         self.assertTrue(s2["name"] == "vnf2")
         self.assertTrue(s2["state"]["Running"])
         self.assertTrue(s2["network"][0]['intf_name'] == 'intf2')
diff --git a/src/emuvim/test/unittests/test_openstack.py b/src/emuvim/test/unittests/test_openstack.py
index 787d398..9eb6a6d 100755
--- a/src/emuvim/test/unittests/test_openstack.py
+++ b/src/emuvim/test/unittests/test_openstack.py
@@ -884,26 +884,26 @@
         self.assertEqual(network_resp.status_code, 200)
         network_id = json.loads(network_resp.content)["networks"][0]["id"]
 
-        port_responses = map(lambda name: requests.post("http://0.0.0.0:19696/v2.0/ports",
-                                                        data='{"port": {"name": "%s", "network_id": "%s"}}' %
-                                                             (name, network_id),
-                                                        headers=headers),
-                             ["p1", "p2", "p3", "p4", "p5", "p6"])
+        port_responses = list(map(lambda name: requests.post("http://0.0.0.0:19696/v2.0/ports",
+                                                             data='{"port": {"name": "%s", "network_id": "%s"}}' %
+                                                                  (name, network_id),
+                                                             headers=headers),
+                                  ["p1", "p2", "p3", "p4", "p5", "p6"]))
 
         for port in port_responses:
             self.assertEqual(port.status_code, 201)
 
-        port_ids = map(lambda response: json.loads(response.content)["port"]["id"], port_responses)
+        port_ids = list(map(lambda response: json.loads(response.content)["port"]["id"], port_responses))
 
         listflavorsresponse = requests.get("http://0.0.0.0:18774/v2.1/id_bla/flavors", headers=headers)
         self.assertEqual(listflavorsresponse.status_code, 200)
         flavors = json.loads(listflavorsresponse.content)["flavors"]
-        m1_tiny_flavor = filter(lambda flavor: flavor["name"] == "m1.tiny", flavors)[0]
+        m1_tiny_flavor = list(filter(lambda flavor: flavor["name"] == "m1.tiny", flavors))[0]
 
         listimagesdetailsresponse = requests.get("http://0.0.0.0:18774/v2.1/id_bla/images/detail", headers=headers)
         self.assertEqual(listimagesdetailsresponse.status_code, 200)
         images = json.loads(listimagesdetailsresponse.content)["images"]
-        ubuntu_image = filter(lambda image: image["name"] == "ubuntu:trusty", images)[0]
+        ubuntu_image = list(filter(lambda image: image["name"] == "ubuntu:trusty", images))[0]
 
         server_url = "http://0.0.0.0:18774/v2.1/id_bla/servers"
         server_template = \
diff --git a/src/emuvim/test/unittests/test_resourcemodel.py b/src/emuvim/test/unittests/test_resourcemodel.py
index c0cf0c4..8ce8b13 100755
--- a/src/emuvim/test/unittests/test_resourcemodel.py
+++ b/src/emuvim/test/unittests/test_resourcemodel.py
@@ -211,7 +211,7 @@
             rm.allocate(c8)  # calculate allocation
             rm.allocate(c9)  # calculate allocation
         except NotEnoughResourcesAvailable as e:
-            self.assertIn("Not enough compute", e.message)
+            self.assertIn("Not enough compute", str(e))
             exception = True
         self.assertTrue(exception)
 
@@ -241,7 +241,7 @@
             rm.allocate(c7)  # calculate allocation
             rm.allocate(c8)  # calculate allocation
         except NotEnoughResourcesAvailable as e:
-            self.assertIn("Not enough memory", e.message)
+            self.assertIn("Not enough memory", str(e))
             exception = True
         self.assertTrue(exception)
 
diff --git a/src/emuvim/test/unittests/test_restapi.py b/src/emuvim/test/unittests/test_restapi.py
index ef157e5..e63cb24 100755
--- a/src/emuvim/test/unittests/test_restapi.py
+++ b/src/emuvim/test/unittests/test_restapi.py
@@ -66,22 +66,24 @@
         print('->>>>>>> checking running nodes, compute list, and connectivity >>>>>>>>>>')
 
         # check number of running nodes
-        self.assertTrue(len(self.getContainernetContainers()) == 3)
-        self.assertTrue(len(self.net.hosts) == 5)
-        self.assertTrue(len(self.net.switches) == 2)
+        self.assertEqual(len(self.getContainernetContainers()), 3)
+        self.assertEqual(len(self.net.hosts), 5)
+        self.assertEqual(len(self.net.switches), 2)
 
         # check compute list result
-        self.assertTrue(len(self.dc[0].listCompute()) == 2)
-        self.assertTrue(len(self.dc[1].listCompute()) == 1)
+        self.assertEqual(len(self.dc[0].listCompute()), 2)
+        self.assertEqual(len(self.dc[1].listCompute()), 1)
         self.assertTrue(isinstance(
             self.dc[0].listCompute()[0], EmulatorCompute))
         self.assertTrue(isinstance(
             self.dc[0].listCompute()[1], EmulatorCompute))
         self.assertTrue(isinstance(
             self.dc[1].listCompute()[0], EmulatorCompute))
-        self.assertTrue(self.dc[0].listCompute()[1].name == "vnf1")
-        self.assertTrue(self.dc[0].listCompute()[0].name == "vnf2")
-        self.assertTrue(self.dc[1].listCompute()[0].name == "vnf3")
+        print("dc1: ", self.dc[0].listCompute())
+        print("dc2: ", self.dc[1].listCompute())
+        self.assertIn("vnf1", list(map(lambda x: x.name, self.dc[0].listCompute())))
+        self.assertIn("vnf2", list(map(lambda x: x.name, self.dc[0].listCompute())))
+        self.assertIn("vnf3", list(map(lambda x: x.name, self.dc[1].listCompute())))
 
         # check connectivity by using ping
         self.assertTrue(self.net.ping(
@@ -95,15 +97,17 @@
         print('->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>')
         output = subprocess.check_output(
             "vim-emu network add -src vnf1 -dst vnf2 -b -c 10", shell=True)
-        self.assertTrue("add-flow" in output)
-        self.assertTrue("success" in output)
+        print("output: ", output)
+        print("type: ", type(output))
+        self.assertIn("add-flow", output.decode())
+        self.assertIn("success", output.decode())
 
         print('network remove vnf1 vnf2->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>')
         print('->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>')
         output = subprocess.check_output(
             "vim-emu network remove -src vnf1 -dst vnf2 -b", shell=True)
-        self.assertTrue("del-flows" in output)
-        self.assertTrue("success" in output)
+        self.assertIn("del-flows", output.decode())
+        self.assertIn("success", output.decode())
 
         print('>>>>> checking --> vim-emu compute stop -d datacenter0 -n vnf2 ->>>>>>')
         print('->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>')
@@ -111,42 +115,42 @@
             "vim-emu compute stop -d datacenter0 -n vnf2", shell=True)
 
         # check number of running nodes
-        self.assertTrue(len(self.getContainernetContainers()) == 2)
-        self.assertTrue(len(self.net.hosts) == 4)
-        self.assertTrue(len(self.net.switches) == 2)
+        self.assertEqual(len(self.getContainernetContainers()), 2)
+        self.assertEqual(len(self.net.hosts), 4)
+        self.assertEqual(len(self.net.switches), 2)
         # check compute list result
-        self.assertTrue(len(self.dc[0].listCompute()) == 1)
-        self.assertTrue(len(self.dc[1].listCompute()) == 1)
+        self.assertEqual(len(self.dc[0].listCompute()), 1)
+        self.assertEqual(len(self.dc[1].listCompute()), 1)
 
         print('>>>>> checking --> vim-emu compute list ->>>>>>>>>>>>>>>>>>>>>>>>>>>>>')
         print('->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>')
         output = subprocess.check_output("vim-emu compute list", shell=True)
 
         # check datacenter list result
-        self.assertTrue("datacenter0" in output)
+        self.assertIn("datacenter0", output.decode())
 
         print('>>>>> checking --> vim-emu compute status -d datacenter0 -n vnf1 ->>>>')
         print('->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>')
         output = subprocess.check_output(
             "vim-emu compute status -d datacenter0 -n vnf1", shell=True)
-        output = ast.literal_eval(output)
+        output = ast.literal_eval(output.decode())
 
         # check compute status result
-        self.assertTrue(output["name"] == "vnf1")
+        self.assertEqual(output["name"], "vnf1")
         self.assertTrue(output["state"]["Running"])
 
         print('>>>>> checking --> vim-emu datacenter list ->>>>>>>>>>>>>>>>>>>>>>>>>>')
         print('->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>')
         output = subprocess.check_output("vim-emu datacenter list", shell=True)
         # check datacenter list result
-        self.assertTrue("datacenter0" in output)
+        self.assertIn("datacenter0", output.decode())
 
         print('->>>>> checking --> vim-emu datacenter status -d datacenter0 ->>>>>>>>')
         print('->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>')
         output = subprocess.check_output(
             "vim-emu datacenter status -d datacenter0", shell=True)
         # check datacenter status result
-        self.assertTrue("datacenter0" in output)
+        self.assertIn("datacenter0", output.decode())
         self.stopApi()
         self.stopNet()
 
diff --git a/src/emuvim/test/unittests/test_tango_llcm.py b/src/emuvim/test/unittests/test_tango_llcm.py
index fc426f5..439a741 100644
--- a/src/emuvim/test/unittests/test_tango_llcm.py
+++ b/src/emuvim/test/unittests/test_tango_llcm.py
@@ -37,6 +37,7 @@
 from emuvim.api.tango.llcm import initialize_GK, parse_interface
 from ipaddress import ip_network
 
+
 PACKAGE_PATH = "misc/eu.5gtango.emulator-example-service.0.1.tgo"
 
 
@@ -98,7 +99,7 @@
         for link in self.net.deployed_elines:
             vnf_src, intf_src = parse_interface(
                 link['connection_points_reference'][0])
-            print vnf_src, intf_src
+            print(vnf_src, intf_src)
             src = self.net.getNodeByName(vnf_src)
             if not src:
                 continue
@@ -119,10 +120,10 @@
             dst_mask = [intf['netmask']
                         for intf in network_list if intf['intf_name'] == intf_dst][0]
 
-            print "src = {0}:{1} ip={2} ".format(
-                vnf_src, intf_src, src_ip, src_mask)
-            print "dst = {0}:{1} ip={2} ".format(
-                vnf_dst, intf_dst, dst_ip, dst_mask)
+            print("src = {0}:{1} ip={2} ".format(
+                vnf_src, intf_src, src_ip, src_mask))
+            print("dst = {0}:{1} ip={2} ".format(
+                vnf_dst, intf_dst, dst_ip, dst_mask))
 
             # check if the E-Line IP's are in the same subnet
             ret = ip_network(u'{0}'.format(src_ip, src_mask), strict=False)\
@@ -137,7 +138,7 @@
             self.assertTrue(len(mgmt_ip) > 0)
             ip_address = mgmt_ip[0]
             ELAN_list.append(ip_address)
-            print ip_address
+            print(ip_address)
 
         # check ELAN connection by ping over the mgmt network (needs to be
         # configured as ELAN in the test service)
@@ -147,14 +148,14 @@
                        for intf in network_list if intf['intf_name'] == 'mgmt']
             self.assertTrue(len(mgmt_ip) > 0)
             ip_address = mgmt_ip[0]
-            print ELAN_list
-            print ip_address
+            print(ELAN_list)
+            print(ip_address)
             test_ip_list = list(ELAN_list)
             test_ip_list.remove(ip_address)
             for ip in test_ip_list:
                 # only take ip address, without netmask
                 p = self.net.ping([vnf], manualdestip=ip.split('/')[0])
-                print p
+                print(p)
                 self.assertTrue(p <= 0.0)
 
         # stop Mininet network
@@ -181,7 +182,7 @@
         self.startNet()
         time.sleep(3)
 
-        print "starting tests"
+        print("starting tests")
         # board package
         files = {"package": open(PACKAGE_PATH, "rb")}
         r = requests.post("http://127.0.0.1:56001/packages", files=files)