Tests suite: fullpath for scripts and config files 36/88736/8
authormanuedelf <emmanuelle.delfour@gmail.com>
Thu, 26 Mar 2020 21:40:19 +0000 (22:40 +0100)
committerGuillaume Lambert <guillaume.lambert@orange.com>
Thu, 16 Apr 2020 15:27:22 +0000 (17:27 +0200)
- one variable for honeynode executable absolute path
- one variable for sample config absolute path directory
- improve PEP8 code-style: remove unused imports, fix line indents,
  line length (<=80) and other minor changes.

Signed-off-by: manuedelf <emmanuelle.delfour@gmail.com>
Change-Id: Icfaefce20673ab776f2ae3b47ea6226e2472d20b

tests/transportpce_tests/1.2.1/test_end2end.py
tests/transportpce_tests/1.2.1/test_gnpy.py
tests/transportpce_tests/1.2.1/test_utils.py
tests/transportpce_tests/2.2.1/test_utils.py

index a4b4ac05d7cc2716547a3e9dc1ad12ccd4a11c47..b5c7711fae5df4f066d2850db850a9e4887a88b5 100644 (file)
 
 
 import json
-import os
-import psutil
-import requests
 import signal
-import shutil
-import subprocess
 import time
 import unittest
+
+import psutil
+import requests
 import test_utils
 
 
 class TransportPCEFulltesting(unittest.TestCase):
-
+    headers = {'content-type': 'application/json'}
     odl_process = None
     honeynode_process1 = None
     honeynode_process2 = None
     honeynode_process3 = None
     honeynode_process4 = None
     restconf_baseurl = "http://localhost:8181/restconf"
-    WAITING = 20      #nominal value is 300
+    WAITING = 20  nominal value is 300
 
-#START_IGNORE_XTESTING
+    #  START_IGNORE_XTESTING
 
     @classmethod
     def setUpClass(cls):
-        print ("starting honeynode1...")
+        print("starting honeynode1...")
         cls.honeynode_process1 = test_utils.start_xpdra_honeynode()
         time.sleep(20)
 
-        print ("starting honeynode2...")
+        print("starting honeynode2...")
         cls.honeynode_process2 = test_utils.start_roadma_full_honeynode()
         time.sleep(20)
 
-        print ("starting honeynode3...")
+        print("starting honeynode3...")
         cls.honeynode_process3 = test_utils.start_roadmc_full_honeynode()
         time.sleep(20)
 
-        print ("starting honeynode4...")
+        print("starting honeynode4...")
         cls.honeynode_process4 = test_utils.start_xpdrc_honeynode()
         time.sleep(20)
-        print ("all honeynodes started")
+        print("all honeynodes started")
 
-        print ("starting opendaylight...")
+        print("starting opendaylight...")
         cls.odl_process = test_utils.start_tpce()
         time.sleep(80)
-        print ("opendaylight started")
+        print("opendaylight started")
 
     @classmethod
     def tearDownClass(cls):
@@ -84,26 +82,26 @@ class TransportPCEFulltesting(unittest.TestCase):
             child.wait()
         cls.honeynode_process4.send_signal(signal.SIGINT)
         cls.honeynode_process4.wait()
-        print ("all processes killed")
+        print("all processes killed")
 
     def setUp(self):  # instruction executed before each test method
-        print ("execution of {}".format(self.id().split(".")[-1]))
+        print("execution of {}".format(self.id().split(".")[-1]))
 
-#END_IGNORE_XTESTING
+    # END_IGNORE_XTESTING
 
-#  connect netconf devices
+    #  connect netconf devices
     def test_01_connect_xpdrA(self):
         url = ("{}/config/network-topology:"
                "network-topology/topology/topology-netconf/node/XPDRA01"
-              .format(self.restconf_baseurl))
+               .format(self.restconf_baseurl))
         data = {"node": [{
-            "node-id": "XPDRA01",
-            "netconf-node-topology:username": "admin",
-            "netconf-node-topology:password": "admin",
-            "netconf-node-topology:host": "127.0.0.1",
-            "netconf-node-topology:port": "17830",
-            "netconf-node-topology:tcp-only": "false",
-            "netconf-node-topology:pass-through": {}}]}
+          "node-id": "XPDRA01",
+          "netconf-node-topology:username": "admin",
+          "netconf-node-topology:password": "admin",
+          "netconf-node-topology:host": "127.0.0.1",
+          "netconf-node-topology:port": "17830",
+          "netconf-node-topology:tcp-only": "false",
+          "netconf-node-topology:pass-through": {}}]}
         headers = {'content-type': 'application/json'}
         response = requests.request(
             "PUT", url, data=json.dumps(data), headers=headers,
@@ -114,15 +112,15 @@ class TransportPCEFulltesting(unittest.TestCase):
     def test_02_connect_xpdrC(self):
         url = ("{}/config/network-topology:"
                "network-topology/topology/topology-netconf/node/XPDRC01"
-              .format(self.restconf_baseurl))
+               .format(self.restconf_baseurl))
         data = {"node": [{
-            "node-id": "XPDRC01",
-            "netconf-node-topology:username": "admin",
-            "netconf-node-topology:password": "admin",
-            "netconf-node-topology:host": "127.0.0.1",
-            "netconf-node-topology:port": "17834",
-            "netconf-node-topology:tcp-only": "false",
-            "netconf-node-topology:pass-through": {}}]}
+          "node-id": "XPDRC01",
+          "netconf-node-topology:username": "admin",
+          "netconf-node-topology:password": "admin",
+          "netconf-node-topology:host": "127.0.0.1",
+          "netconf-node-topology:port": "17834",
+          "netconf-node-topology:tcp-only": "false",
+          "netconf-node-topology:pass-through": {}}]}
         headers = {'content-type': 'application/json'}
         response = requests.request(
             "PUT", url, data=json.dumps(data), headers=headers,
@@ -135,17 +133,17 @@ class TransportPCEFulltesting(unittest.TestCase):
                "network-topology/topology/topology-netconf/node/ROADMA01"
                .format(self.restconf_baseurl))
         data = {"node": [{
-             "node-id": "ROADMA01",
-             "netconf-node-topology:username": "admin",
-             "netconf-node-topology:password": "admin",
-             "netconf-node-topology:host": "127.0.0.1",
-             "netconf-node-topology:port": "17821",
-             "netconf-node-topology:tcp-only": "false",
-             "netconf-node-topology:pass-through": {}}]}
+          "node-id": "ROADMA01",
+          "netconf-node-topology:username": "admin",
+          "netconf-node-topology:password": "admin",
+          "netconf-node-topology:host": "127.0.0.1",
+          "netconf-node-topology:port": "17821",
+          "netconf-node-topology:tcp-only": "false",
+          "netconf-node-topology:pass-through": {}}]}
         headers = {'content-type': 'application/json'}
         response = requests.request(
-             "PUT", url, data=json.dumps(data), headers=headers,
-              auth=('admin', 'admin'))
+            "PUT", url, data=json.dumps(data), headers=headers,
+            auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.created)
         time.sleep(20)
 
@@ -154,119 +152,131 @@ class TransportPCEFulltesting(unittest.TestCase):
                "network-topology/topology/topology-netconf/node/ROADMC01"
                .format(self.restconf_baseurl))
         data = {"node": [{
-             "node-id": "ROADMC01",
-             "netconf-node-topology:username": "admin",
-             "netconf-node-topology:password": "admin",
-             "netconf-node-topology:host": "127.0.0.1",
-             "netconf-node-topology:port": "17823",
-             "netconf-node-topology:tcp-only": "false",
-             "netconf-node-topology:pass-through": {}}]}
+          "node-id": "ROADMC01",
+          "netconf-node-topology:username": "admin",
+          "netconf-node-topology:password": "admin",
+          "netconf-node-topology:host": "127.0.0.1",
+          "netconf-node-topology:port": "17823",
+          "netconf-node-topology:tcp-only": "false",
+          "netconf-node-topology:pass-through": {}}]}
         headers = {'content-type': 'application/json'}
         response = requests.request(
-             "PUT", url, data=json.dumps(data), headers=headers,
-              auth=('admin', 'admin'))
+            "PUT", url, data=json.dumps(data), headers=headers,
+            auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.created)
         time.sleep(20)
 
     def test_05_connect_xprdA_N1_to_roadmA_PP1(self):
-        url = "{}/operations/transportpce-networkutils:init-xpdr-rdm-links".format(self.restconf_baseurl)
+        url = "{}/operations/transportpce-networkutils:init-xpdr-rdm-links".\
+            format(self.restconf_baseurl)
         data = {
-            "networkutils:input": {
-                "networkutils:links-input": {
-                    "networkutils:xpdr-node": "XPDRA01",
-                    "networkutils:xpdr-num": "1",
-                    "networkutils:network-num": "1",
-                    "networkutils:rdm-node": "ROADMA01",
-                    "networkutils:srg-num": "1",
-                    "networkutils:termination-point-num": "SRG1-PP1-TXRX"
-                }
+          "networkutils:input": {
+            "networkutils:links-input": {
+              "networkutils:xpdr-node": "XPDRA01",
+              "networkutils:xpdr-num": "1",
+              "networkutils:network-num": "1",
+              "networkutils:rdm-node": "ROADMA01",
+              "networkutils:srg-num": "1",
+              "networkutils:termination-point-num": "SRG1-PP1-TXRX"
             }
+          }
         }
         headers = {'content-type': 'application/json'}
         response = requests.request(
-             "POST", url, data=json.dumps(data),
-             headers=headers, auth=('admin', 'admin'))
+            "POST", url, data=json.dumps(data),
+            headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
-        self.assertIn('Xponder Roadm Link created successfully', res["output"]["result"])
+        self.assertIn('Xponder Roadm Link created successfully',
+                      res["output"]["result"])
         time.sleep(2)
 
     def test_06_connect_roadmA_PP1_to_xpdrA_N1(self):
-        url = "{}/operations/transportpce-networkutils:init-rdm-xpdr-links".format(self.restconf_baseurl)
+        url = "{}/operations/transportpce-networkutils:init-rdm-xpdr-links".\
+            format(self.restconf_baseurl)
         data = {
-            "networkutils:input": {
-                "networkutils:links-input": {
-                    "networkutils:xpdr-node": "XPDRA01",
-                    "networkutils:xpdr-num": "1",
-                    "networkutils:network-num": "1",
-                    "networkutils:rdm-node": "ROADMA01",
-                    "networkutils:srg-num": "1",
-                    "networkutils:termination-point-num": "SRG1-PP1-TXRX"
-                }
+          "networkutils:input": {
+            "networkutils:links-input": {
+              "networkutils:xpdr-node": "XPDRA01",
+              "networkutils:xpdr-num": "1",
+              "networkutils:network-num": "1",
+              "networkutils:rdm-node": "ROADMA01",
+              "networkutils:srg-num": "1",
+              "networkutils:termination-point-num": "SRG1-PP1-TXRX"
             }
+          }
         }
         headers = {'content-type': 'application/json'}
         response = requests.request(
-             "POST", url, data=json.dumps(data),
-             headers=headers, auth=('admin', 'admin'))
+            "POST", url, data=json.dumps(data),
+            headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
-        self.assertIn('Roadm Xponder links created successfully', res["output"]["result"])
+        self.assertIn('Roadm Xponder links created successfully',
+                      res["output"]["result"])
         time.sleep(2)
 
     def test_07_connect_xprdC_N1_to_roadmC_PP1(self):
-        url = "{}/operations/transportpce-networkutils:init-xpdr-rdm-links".format(self.restconf_baseurl)
+        url = "{}/operations/transportpce-networkutils:init-xpdr-rdm-links".\
+            format(self.restconf_baseurl)
         data = {
-            "networkutils:input": {
-                "networkutils:links-input": {
-                    "networkutils:xpdr-node": "XPDRC01",
-                    "networkutils:xpdr-num": "1",
-                    "networkutils:network-num": "1",
-                    "networkutils:rdm-node": "ROADMC01",
-                    "networkutils:srg-num": "1",
-                    "networkutils:termination-point-num": "SRG1-PP1-TXRX"
-                }
+          "networkutils:input": {
+            "networkutils:links-input": {
+              "networkutils:xpdr-node": "XPDRC01",
+              "networkutils:xpdr-num": "1",
+              "networkutils:network-num": "1",
+              "networkutils:rdm-node": "ROADMC01",
+              "networkutils:srg-num": "1",
+              "networkutils:termination-point-num": "SRG1-PP1-TXRX"
             }
+          }
         }
         headers = {'content-type': 'application/json'}
         response = requests.request(
-             "POST", url, data=json.dumps(data),
-             headers=headers, auth=('admin', 'admin'))
+            "POST", url, data=json.dumps(data),
+            headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
-        self.assertIn('Xponder Roadm Link created successfully', res["output"]["result"])
+        self.assertIn('Xponder Roadm Link created successfully',
+                      res["output"]["result"])
         time.sleep(2)
 
     def test_08_connect_roadmC_PP1_to_xpdrC_N1(self):
-        url = "{}/operations/transportpce-networkutils:init-rdm-xpdr-links".format(self.restconf_baseurl)
+        url = "{}/operations/transportpce-networkutils:init-rdm-xpdr-links".\
+            format(self.restconf_baseurl)
         data = {
-            "networkutils:input": {
-                "networkutils:links-input": {
-                    "networkutils:xpdr-node": "XPDRC01",
-                    "networkutils:xpdr-num": "1",
-                    "networkutils:network-num": "1",
-                    "networkutils:rdm-node": "ROADMC01",
-                    "networkutils:srg-num": "1",
-                    "networkutils:termination-point-num": "SRG1-PP1-TXRX"
-                }
+          "networkutils:input": {
+            "networkutils:links-input": {
+              "networkutils:xpdr-node": "XPDRC01",
+              "networkutils:xpdr-num": "1",
+              "networkutils:network-num": "1",
+              "networkutils:rdm-node": "ROADMC01",
+              "networkutils:srg-num": "1",
+              "networkutils:termination-point-num": "SRG1-PP1-TXRX"
             }
+          }
         }
         headers = {'content-type': 'application/json'}
         response = requests.request(
-             "POST", url, data=json.dumps(data),
-             headers=headers, auth=('admin', 'admin'))
+            "POST", url, data=json.dumps(data),
+            headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
-        self.assertIn('Roadm Xponder links created successfully', res["output"]["result"])
+        self.assertIn('Roadm Xponder links created successfully',
+                      res["output"]["result"])
         time.sleep(2)
 
     def test_09_add_omsAttributes_ROADMA_ROADMC(self):
         # Config ROADMA-ROADMC oms-attributes
-        url = ("{}/config/ietf-network:networks/network/openroadm-topology/ietf-network-topology:"
-               "link/ROADMA01-DEG1-DEG1-TTP-TXRXtoROADMC01-DEG2-DEG2-TTP-TXRX/org-openroadm-network-topology:"
-               "OMS-attributes/span"
-               .format(self.restconf_baseurl))
+        url = (
+          "{}/config/ietf-network:"
+          "networks/network/openroadm-topology/ietf-network-topology:"
+          "link/ROADMA01-DEG1-DEG1-TTP-TXRXtoROADMC01-DEG2-DEG2-TTP-TXRX/"
+          "org-openroadm-network-topology:"
+          "OMS-attributes/span"
+          .format(self.restconf_baseurl))
         data = {"span": {
+            "clfi": "fiber1",
             "auto-spanloss": "true",
             "spanloss-base": 11.4,
             "spanloss-current": 12,
@@ -284,36 +294,42 @@ class TransportPCEFulltesting(unittest.TestCase):
 
     def test_10_add_omsAttributes_ROADMC_ROADMA(self):
         # Config ROADMC-ROADMA oms-attributes
-        url = ("{}/config/ietf-network:networks/network/openroadm-topology/ietf-network-topology:"
-               "link/ROADMC01-DEG2-DEG2-TTP-TXRXtoROADMA01-DEG1-DEG1-TTP-TXRX/org-openroadm-network-topology:"
-               "OMS-attributes/span"
-               .format(self.restconf_baseurl))
+        url = (
+          "{}/config/ietf-network:"
+          "networks/network/openroadm-topology/ietf-network-topology:"
+          "link/ROADMC01-DEG2-DEG2-TTP-TXRXtoROADMA01-DEG1-DEG1-TTP-TXRX/"
+          "org-openroadm-network-topology:"
+          "OMS-attributes/span"
+          .format(self.restconf_baseurl))
         data = {"span": {
-            "auto-spanloss": "true",
-            "spanloss-base": 11.4,
-            "spanloss-current": 12,
-            "engineered-spanloss": 12.2,
-            "link-concatenation": [{
-                "SRLG-Id": 0,
-                "fiber-type": "smf",
-                "SRLG-length": 100000,
-                "pmd": 0.5}]}}
+          "clfi": "fiber1",
+          "auto-spanloss": "true",
+          "spanloss-base": 11.4,
+          "spanloss-current": 12,
+          "engineered-spanloss": 12.2,
+          "link-concatenation": [{
+            "SRLG-Id": 0,
+            "fiber-type": "smf",
+            "SRLG-length": 100000,
+            "pmd": 0.5}]}}
         headers = {'content-type': 'application/json'}
         response = requests.request(
             "PUT", url, data=json.dumps(data), headers=headers,
             auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.created)
 
-#test service-create for Eth service from xpdr to xpdr
+    # test service-create for Eth service from xpdr to xpdr
     def test_11_create_eth_service1(self):
         url = ("{}/operations/org-openroadm-service:service-create"
-              .format(self.restconf_baseurl))
-        data = {"input": {
+               .format(self.restconf_baseurl))
+        data = {
+            "input": {
                 "sdnc-request-header": {
                     "request-id": "e3028bae-a90f-4ddd-a83f-cf224eba0e58",
                     "rpc-action": "service-create",
                     "request-system-id": "appname",
-                    "notification-url": "http://localhost:8585/NotificationServer/notify"
+                    "notification-url":
+                        "http://localhost:8585/NotificationServer/notify"
                 },
                 "service-name": "service1",
                 "common-id": "ASATT1234567",
@@ -325,14 +341,16 @@ class TransportPCEFulltesting(unittest.TestCase):
                     "clli": "SNJSCAMCJP8",
                     "tx-direction": {
                         "port": {
-                            "port-device-name": "ROUTER_SNJSCAMCJP8_000000.00_00",
+                            "port-device-name":
+                                "ROUTER_SNJSCAMCJP8_000000.00_00",
                             "port-type": "router",
                             "port-name": "Gigabit Ethernet_Tx.ge-5/0/0.0",
                             "port-rack": "000000.00",
                             "port-shelf": "00"
                         },
                         "lgx": {
-                            "lgx-device-name": "LGX Panel_SNJSCAMCJP8_000000.00_00",
+                            "lgx-device-name":
+                                "LGX Panel_SNJSCAMCJP8_000000.00_00",
                             "lgx-port-name": "LGX Back.3",
                             "lgx-port-rack": "000000.00",
                             "lgx-port-shelf": "00"
@@ -340,14 +358,16 @@ class TransportPCEFulltesting(unittest.TestCase):
                     },
                     "rx-direction": {
                         "port": {
-                            "port-device-name": "ROUTER_SNJSCAMCJP8_000000.00_00",
+                            "port-device-name":
+                                "ROUTER_SNJSCAMCJP8_000000.00_00",
                             "port-type": "router",
                             "port-name": "Gigabit Ethernet_Rx.ge-5/0/0.0",
                             "port-rack": "000000.00",
                             "port-shelf": "00"
                         },
                         "lgx": {
-                            "lgx-device-name": "LGX Panel_SNJSCAMCJP8_000000.00_00",
+                            "lgx-device-name":
+                                "LGX Panel_SNJSCAMCJP8_000000.00_00",
                             "lgx-port-name": "LGX Back.4",
                             "lgx-port-rack": "000000.00",
                             "lgx-port-shelf": "00"
@@ -362,14 +382,16 @@ class TransportPCEFulltesting(unittest.TestCase):
                     "clli": "SNJSCAMCJT4",
                     "tx-direction": {
                         "port": {
-                            "port-device-name": "ROUTER_SNJSCAMCJT4_000000.00_00",
+                            "port-device-name":
+                                "ROUTER_SNJSCAMCJT4_000000.00_00",
                             "port-type": "router",
                             "port-name": "Gigabit Ethernet_Tx.ge-1/0/0.0",
                             "port-rack": "000000.00",
                             "port-shelf": "00"
                         },
                         "lgx": {
-                            "lgx-device-name": "LGX Panel_SNJSCAMCJT4_000000.00_00",
+                            "lgx-device-name":
+                                "LGX Panel_SNJSCAMCJT4_000000.00_00",
                             "lgx-port-name": "LGX Back.29",
                             "lgx-port-rack": "000000.00",
                             "lgx-port-shelf": "00"
@@ -377,14 +399,16 @@ class TransportPCEFulltesting(unittest.TestCase):
                     },
                     "rx-direction": {
                         "port": {
-                            "port-device-name": "ROUTER_SNJSCAMCJT4_000000.00_00",
+                            "port-device-name":
+                                "ROUTER_SNJSCAMCJT4_000000.00_00",
                             "port-type": "router",
                             "port-name": "Gigabit Ethernet_Rx.ge-1/0/0.0",
                             "port-rack": "000000.00",
                             "port-shelf": "00"
                         },
                         "lgx": {
-                            "lgx-device-name": "LGX Panel_SNJSCAMCJT4_000000.00_00",
+                            "lgx-device-name":
+                                "LGX Panel_SNJSCAMCJT4_000000.00_00",
                             "lgx-port-name": "LGX Back.30",
                             "lgx-port-rack": "000000.00",
                             "lgx-port-shelf": "00"
@@ -397,21 +421,22 @@ class TransportPCEFulltesting(unittest.TestCase):
             }
         }
         headers = {'content-type': 'application/json',
-        "Accept": "application/json"}
+                   "Accept": "application/json"}
         response = requests.request(
             "POST", url, data=json.dumps(data), headers=headers,
             auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         self.assertIn('PCE calculation in progress',
-            res['output']['configuration-response-common']['response-message'])
+                      res['output']['configuration-response-common'][
+                        'response-message'])
         time.sleep(self.WAITING)
 
     def test_12_get_eth_service1(self):
-        url = ("{}/operational/org-openroadm-service:service-list/services/service1"
-              .format(self.restconf_baseurl))
+        url = ("{}/operational/org-openroadm-service:service-list/services/"
+               "service1".format(self.restconf_baseurl))
         headers = {'content-type': 'application/json',
-        "Accept": "application/json"}
+                   "Accept": "application/json"}
         response = requests.request(
             "GET", url, headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
@@ -428,110 +453,142 @@ class TransportPCEFulltesting(unittest.TestCase):
         time.sleep(2)
 
     def test_13_check_xc1_ROADMA(self):
-        url = ("{}/config/network-topology:network-topology/topology/topology-netconf/"
-               "node/ROADMA01/yang-ext:mount/org-openroadm-device:org-openroadm-device/"
-               "roadm-connections/SRG1-PP1-TXRX-DEG1-TTP-TXRX-1"
-               .format(self.restconf_baseurl))
+        url = (
+            "{}/config/network-topology:"
+            "network-topology/topology/topology-netconf/"
+            "node/ROADMA01/yang-ext:"
+            "mount/org-openroadm-device:org-openroadm-device/"
+            "roadm-connections/SRG1-PP1-TXRX-DEG1-TTP-TXRX-1"
+            .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json'}
         response = requests.request(
-             "GET", url, headers=headers, auth=('admin', 'admin'))
+            "GET", url, headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         self.assertDictContainsSubset(
-             {'connection-number': 'SRG1-PP1-TXRX-DEG1-TTP-TXRX-1',
-              'wavelength-number': 1,
-              'opticalControlMode': 'gainLoss',
-              'target-output-power': -3.0},
-             res['roadm-connections'][0])
+            {'connection-number': 'SRG1-PP1-TXRX-DEG1-TTP-TXRX-1',
+             'wavelength-number': 1,
+             'opticalControlMode': 'gainLoss',
+             'target-output-power': -3.0},
+            res['roadm-connections'][0])
         self.assertDictEqual(
-             {'src-if': 'SRG1-PP1-TXRX-1'},
-             res['roadm-connections'][0]['source'])
+            {'src-if': 'SRG1-PP1-TXRX-1'},
+            res['roadm-connections'][0]['source'])
         self.assertDictEqual(
-             {'dst-if': 'DEG1-TTP-TXRX-1'},
-             res['roadm-connections'][0]['destination'])
+            {'dst-if': 'DEG1-TTP-TXRX-1'},
+            res['roadm-connections'][0]['destination'])
         time.sleep(5)
 
     def test_14_check_xc1_ROADMC(self):
-        url = ("{}/config/network-topology:network-topology/topology/topology-netconf/"
-               "node/ROADMC01/yang-ext:mount/org-openroadm-device:org-openroadm-device/"
-               "roadm-connections/SRG1-PP1-TXRX-DEG2-TTP-TXRX-1"
-               .format(self.restconf_baseurl))
+        url = (
+            "{}/config/network-topology:"
+            "network-topology/topology/topology-netconf/"
+            "node/ROADMC01/yang-ext:mount/org-openroadm-device:"
+            "org-openroadm-device/"
+            "roadm-connections/SRG1-PP1-TXRX-DEG2-TTP-TXRX-1"
+            .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json'}
         response = requests.request(
-             "GET", url, headers=headers, auth=('admin', 'admin'))
+            "GET", url, headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         self.assertDictContainsSubset(
-             {'connection-number': 'SRG1-PP1-TXRX-DEG2-TTP-TXRX-1',
-              'wavelength-number': 1,
-              'opticalControlMode': 'gainLoss',
-              'target-output-power': 2.0},
-             res['roadm-connections'][0])
+            {'connection-number': 'SRG1-PP1-TXRX-DEG2-TTP-TXRX-1',
+             'wavelength-number': 1,
+             'opticalControlMode': 'gainLoss',
+             'target-output-power': 2.0},
+            res['roadm-connections'][0])
         self.assertDictEqual(
-             {'src-if': 'SRG1-PP1-TXRX-1'},
-             res['roadm-connections'][0]['source'])
+            {'src-if': 'SRG1-PP1-TXRX-1'},
+            res['roadm-connections'][0]['source'])
         self.assertDictEqual(
-             {'dst-if': 'DEG2-TTP-TXRX-1'},
-             res['roadm-connections'][0]['destination'])
+            {'dst-if': 'DEG2-TTP-TXRX-1'},
+            res['roadm-connections'][0]['destination'])
         time.sleep(5)
 
     def test_15_check_topo_XPDRA(self):
-        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/XPDRA01-XPDR1"
-               .format(self.restconf_baseurl))
+        url1 = (
+            "{}/config/ietf-network:"
+            "networks/network/openroadm-topology/node/XPDRA01-XPDR1"
+            .format(self.restconf_baseurl))
         response = requests.request(
-             "GET", url1, auth=('admin', 'admin'))
+            "GET", url1, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         liste_tp = res['node'][0]['ietf-network-topology:termination-point']
         for ele in liste_tp:
             if ele['tp-id'] == 'XPDR1-NETWORK1':
                 self.assertEqual({u'frequency': 196.1, u'width': 40},
-                                 ele['org-openroadm-network-topology:xpdr-network-attributes']['wavelength'])
-            if ele['tp-id'] == 'XPDR1-CLIENT1' or ele['tp-id'] == 'XPDR1-CLIENT3':
-                self.assertNotIn('org-openroadm-network-topology:xpdr-client-attributes', dict.keys(ele))
+                                 ele[
+                                     'org-openroadm-network-topology:'
+                                     'xpdr-network-attributes'][
+                                     'wavelength'])
+            if ele['tp-id'] == 'XPDR1-CLIENT1' or \
+               ele['tp-id'] == 'XPDR1-CLIENT3':
+                self.assertNotIn(
+                    'org-openroadm-network-topology:xpdr-client-attributes',
+                    dict.keys(ele))
             if ele['tp-id'] == 'XPDR1-NETWORK2':
-                self.assertNotIn('org-openroadm-network-topology:xpdr-network-attributes', dict.keys(ele))
+                self.assertNotIn(
+                    'org-openroadm-network-topology:xpdr-network-attributes',
+                    dict.keys(ele))
         time.sleep(3)
 
     def test_16_check_topo_ROADMA_SRG1(self):
-        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/ROADMA01-SRG1"
-               .format(self.restconf_baseurl))
+        url1 = (
+            "{}/config/ietf-network:"
+            "networks/network/openroadm-topology/node/ROADMA01-SRG1"
+            .format(self.restconf_baseurl))
         response = requests.request(
-             "GET", url1, auth=('admin', 'admin'))
+            "GET", url1, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         self.assertNotIn({u'index': 1},
-                          res['node'][0][u'org-openroadm-network-topology:srg-attributes']['available-wavelengths'])
+                         res['node'][0][
+                             u'org-openroadm-network-topology:srg-attributes'][
+                             'available-wavelengths'])
         liste_tp = res['node'][0]['ietf-network-topology:termination-point']
         for ele in liste_tp:
             if ele['tp-id'] == 'SRG1-PP1-TXRX':
                 self.assertIn({u'index': 1, u'frequency': 196.1, u'width': 40},
-                               ele['org-openroadm-network-topology:pp-attributes']['used-wavelength'])
+                              ele['org-openroadm-network-topology:'
+                                  'pp-attributes']['used-wavelength']
+                              )
             if ele['tp-id'] == 'SRG1-PP2-TXRX':
                 self.assertNotIn('used-wavelength', dict.keys(ele))
         time.sleep(3)
 
     def test_17_check_topo_ROADMA_DEG1(self):
-        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/ROADMA01-DEG1"
-               .format(self.restconf_baseurl))
+        url1 = (
+            "{}/config/ietf-network:"
+            "networks/network/openroadm-topology/node/ROADMA01-DEG1"
+            .format(self.restconf_baseurl))
         response = requests.request(
-             "GET", url1, auth=('admin', 'admin'))
+            "GET", url1, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         self.assertNotIn({u'index': 1},
-                          res['node'][0][u'org-openroadm-network-topology:degree-attributes']['available-wavelengths'])
+                         res['node'][0][
+                             u'org-openroadm-network-topology:'
+                             u'degree-attributes'][
+                             'available-wavelengths'])
         liste_tp = res['node'][0]['ietf-network-topology:termination-point']
         for ele in liste_tp:
             if ele['tp-id'] == 'DEG1-CTP-TXRX':
                 self.assertIn({u'index': 1, u'frequency': 196.1, u'width': 40},
-                               ele['org-openroadm-network-topology:ctp-attributes']['used-wavelengths'])
+                              ele['org-openroadm-network-topology:'
+                                  'ctp-attributes'][
+                                  'used-wavelengths'])
             if ele['tp-id'] == 'DEG1-TTP-TXRX':
                 self.assertIn({u'index': 1, u'frequency': 196.1, u'width': 40},
-                               ele['org-openroadm-network-topology:tx-ttp-attributes']['used-wavelengths'])
+                              ele['org-openroadm-network-topology:'
+                                  'tx-ttp-attributes'][
+                                  'used-wavelengths'])
         time.sleep(3)
 
     def test_18_connect_xprdA_N2_to_roadmA_PP2(self):
-        url = "{}/operations/transportpce-networkutils:init-xpdr-rdm-links".format(self.restconf_baseurl)
+        url = "{}/operations/transportpce-networkutils:init-xpdr-rdm-links".\
+            format(self.restconf_baseurl)
         data = {
             "networkutils:input": {
                 "networkutils:links-input": {
@@ -546,15 +603,17 @@ class TransportPCEFulltesting(unittest.TestCase):
         }
         headers = {'content-type': 'application/json'}
         response = requests.request(
-             "POST", url, data=json.dumps(data),
-             headers=headers, auth=('admin', 'admin'))
+            "POST", url, data=json.dumps(data),
+            headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
-        self.assertIn('Xponder Roadm Link created successfully', res["output"]["result"])
+        self.assertIn('Xponder Roadm Link created successfully',
+                      res["output"]["result"])
         time.sleep(2)
 
     def test_19_connect_roadmA_PP2_to_xpdrA_N2(self):
-        url = "{}/operations/transportpce-networkutils:init-rdm-xpdr-links".format(self.restconf_baseurl)
+        url = "{}/operations/transportpce-networkutils:init-rdm-xpdr-links".\
+            format(self.restconf_baseurl)
         data = {
             "networkutils:input": {
                 "networkutils:links-input": {
@@ -569,15 +628,17 @@ class TransportPCEFulltesting(unittest.TestCase):
         }
         headers = {'content-type': 'application/json'}
         response = requests.request(
-             "POST", url, data=json.dumps(data),
-             headers=headers, auth=('admin', 'admin'))
+            "POST", url, data=json.dumps(data),
+            headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
-        self.assertIn('Roadm Xponder links created successfully', res["output"]["result"])
+        self.assertIn('Roadm Xponder links created successfully',
+                      res["output"]["result"])
         time.sleep(2)
 
     def test_20_connect_xprdC_N2_to_roadmC_PP2(self):
-        url = "{}/operations/transportpce-networkutils:init-xpdr-rdm-links".format(self.restconf_baseurl)
+        url = "{}/operations/transportpce-networkutils:init-xpdr-rdm-links".\
+            format(self.restconf_baseurl)
         data = {
             "networkutils:input": {
                 "networkutils:links-input": {
@@ -592,15 +653,17 @@ class TransportPCEFulltesting(unittest.TestCase):
         }
         headers = {'content-type': 'application/json'}
         response = requests.request(
-             "POST", url, data=json.dumps(data),
-             headers=headers, auth=('admin', 'admin'))
+            "POST", url, data=json.dumps(data),
+            headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
-        self.assertIn('Xponder Roadm Link created successfully', res["output"]["result"])
+        self.assertIn('Xponder Roadm Link created successfully',
+                      res["output"]["result"])
         time.sleep(2)
 
     def test_21_connect_roadmC_PP2_to_xpdrC_N2(self):
-        url = "{}/operations/transportpce-networkutils:init-rdm-xpdr-links".format(self.restconf_baseurl)
+        url = "{}/operations/transportpce-networkutils:init-rdm-xpdr-links".\
+            format(self.restconf_baseurl)
         data = {
             "networkutils:input": {
                 "networkutils:links-input": {
@@ -615,22 +678,25 @@ class TransportPCEFulltesting(unittest.TestCase):
         }
         headers = {'content-type': 'application/json'}
         response = requests.request(
-             "POST", url, data=json.dumps(data),
-             headers=headers, auth=('admin', 'admin'))
+            "POST", url, data=json.dumps(data),
+            headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
-        self.assertIn('Roadm Xponder links created successfully', res["output"]["result"])
+        self.assertIn('Roadm Xponder links created successfully',
+                      res["output"]["result"])
         time.sleep(2)
 
     def test_22_create_eth_service2(self):
         url = ("{}/operations/org-openroadm-service:service-create"
-              .format(self.restconf_baseurl))
-        data = {"input": {
+               .format(self.restconf_baseurl))
+        data = {
+            "input": {
                 "sdnc-request-header": {
                     "request-id": "e3028bae-a90f-4ddd-a83f-cf224eba0e58",
                     "rpc-action": "service-create",
                     "request-system-id": "appname",
-                    "notification-url": "http://localhost:8585/NotificationServer/notify"
+                    "notification-url":
+                        "http://localhost:8585/NotificationServer/notify"
                 },
                 "service-name": "service2",
                 "common-id": "ASATT1234567",
@@ -642,14 +708,16 @@ class TransportPCEFulltesting(unittest.TestCase):
                     "clli": "SNJSCAMCJP8",
                     "tx-direction": {
                         "port": {
-                            "port-device-name": "ROUTER_SNJSCAMCJP8_000000.00_00",
+                            "port-device-name":
+                                "ROUTER_SNJSCAMCJP8_000000.00_00",
                             "port-type": "router",
                             "port-name": "Gigabit Ethernet_Tx.ge-5/0/0.0",
                             "port-rack": "000000.00",
                             "port-shelf": "00"
                         },
                         "lgx": {
-                            "lgx-device-name": "LGX Panel_SNJSCAMCJP8_000000.00_00",
+                            "lgx-device-name":
+                                "LGX Panel_SNJSCAMCJP8_000000.00_00",
                             "lgx-port-name": "LGX Back.3",
                             "lgx-port-rack": "000000.00",
                             "lgx-port-shelf": "00"
@@ -657,14 +725,16 @@ class TransportPCEFulltesting(unittest.TestCase):
                     },
                     "rx-direction": {
                         "port": {
-                            "port-device-name": "ROUTER_SNJSCAMCJP8_000000.00_00",
+                            "port-device-name":
+                                "ROUTER_SNJSCAMCJP8_000000.00_00",
                             "port-type": "router",
                             "port-name": "Gigabit Ethernet_Rx.ge-5/0/0.0",
                             "port-rack": "000000.00",
                             "port-shelf": "00"
                         },
                         "lgx": {
-                            "lgx-device-name": "LGX Panel_SNJSCAMCJP8_000000.00_00",
+                            "lgx-device-name":
+                                "LGX Panel_SNJSCAMCJP8_000000.00_00",
                             "lgx-port-name": "LGX Back.4",
                             "lgx-port-rack": "000000.00",
                             "lgx-port-shelf": "00"
@@ -679,14 +749,16 @@ class TransportPCEFulltesting(unittest.TestCase):
                     "clli": "SNJSCAMCJT4",
                     "tx-direction": {
                         "port": {
-                            "port-device-name": "ROUTER_SNJSCAMCJT4_000000.00_00",
+                            "port-device-name":
+                                "ROUTER_SNJSCAMCJT4_000000.00_00",
                             "port-type": "router",
                             "port-name": "Gigabit Ethernet_Tx.ge-1/0/0.0",
                             "port-rack": "000000.00",
                             "port-shelf": "00"
                         },
                         "lgx": {
-                            "lgx-device-name": "LGX Panel_SNJSCAMCJT4_000000.00_00",
+                            "lgx-device-name":
+                                "LGX Panel_SNJSCAMCJT4_000000.00_00",
                             "lgx-port-name": "LGX Back.29",
                             "lgx-port-rack": "000000.00",
                             "lgx-port-shelf": "00"
@@ -694,14 +766,16 @@ class TransportPCEFulltesting(unittest.TestCase):
                     },
                     "rx-direction": {
                         "port": {
-                            "port-device-name": "ROUTER_SNJSCAMCJT4_000000.00_00",
+                            "port-device-name":
+                                "ROUTER_SNJSCAMCJT4_000000.00_00",
                             "port-type": "router",
                             "port-name": "Gigabit Ethernet_Rx.ge-1/0/0.0",
                             "port-rack": "000000.00",
                             "port-shelf": "00"
                         },
                         "lgx": {
-                            "lgx-device-name": "LGX Panel_SNJSCAMCJT4_000000.00_00",
+                            "lgx-device-name":
+                                "LGX Panel_SNJSCAMCJT4_000000.00_00",
                             "lgx-port-name": "LGX Back.30",
                             "lgx-port-rack": "000000.00",
                             "lgx-port-shelf": "00"
@@ -714,21 +788,23 @@ class TransportPCEFulltesting(unittest.TestCase):
             }
         }
         headers = {'content-type': 'application/json',
-        "Accept": "application/json"}
+                   "Accept": "application/json"}
         response = requests.request(
             "POST", url, data=json.dumps(data), headers=headers,
             auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         self.assertIn('PCE calculation in progress',
-            res['output']['configuration-response-common']['response-message'])
+                      res['output']['configuration-response-common'][
+                          'response-message'])
         time.sleep(self.WAITING)
 
     def test_23_get_eth_service2(self):
-        url = ("{}/operational/org-openroadm-service:service-list/services/service2"
-              .format(self.restconf_baseurl))
+        url = ("{}/operational/org-openroadm-service:"
+               "service-list/services/service2"
+               .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json',
-        "Accept": "application/json"}
+                   "Accept": "application/json"}
         response = requests.request(
             "GET", url, headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
@@ -745,104 +821,141 @@ class TransportPCEFulltesting(unittest.TestCase):
         time.sleep(1)
 
     def test_24_check_xc2_ROADMA(self):
-        url = ("{}/config/network-topology:network-topology/topology/topology-netconf/"
-               "node/ROADMA01/yang-ext:mount/org-openroadm-device:org-openroadm-device/"
-               "roadm-connections/DEG1-TTP-TXRX-SRG1-PP2-TXRX-2"
-               .format(self.restconf_baseurl))
+        url = (
+            "{}/config/network-topology:"
+            "network-topology/topology/topology-netconf/"
+            "node/ROADMA01/yang-ext:"
+            "mount/org-openroadm-device:org-openroadm-device/"
+            "roadm-connections/DEG1-TTP-TXRX-SRG1-PP2-TXRX-2"
+            .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json'}
         response = requests.request(
-             "GET", url, headers=headers, auth=('admin', 'admin'))
+            "GET", url, headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         self.assertDictContainsSubset(
-             {'connection-number': 'DEG1-TTP-TXRX-SRG1-PP2-TXRX-2',
-              'wavelength-number': 2,
-              'opticalControlMode': 'power'},
-             res['roadm-connections'][0])
+            {'connection-number': 'DEG1-TTP-TXRX-SRG1-PP2-TXRX-2',
+             'wavelength-number': 2,
+             'opticalControlMode': 'power'},
+            res['roadm-connections'][0])
         self.assertDictEqual(
-             {'src-if': 'DEG1-TTP-TXRX-2'},
-             res['roadm-connections'][0]['source'])
+            {'src-if': 'DEG1-TTP-TXRX-2'},
+            res['roadm-connections'][0]['source'])
         self.assertDictEqual(
-             {'dst-if': 'SRG1-PP2-TXRX-2'},
-             res['roadm-connections'][0]['destination'])
+            {'dst-if': 'SRG1-PP2-TXRX-2'},
+            res['roadm-connections'][0]['destination'])
 
     def test_25_check_topo_XPDRA(self):
-        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/XPDRA01-XPDR1"
-               .format(self.restconf_baseurl))
+        url1 = (
+            "{}/config/ietf-network:"
+            "networks/network/openroadm-topology/node/XPDRA01-XPDR1"
+            .format(self.restconf_baseurl))
         response = requests.request(
-             "GET", url1, auth=('admin', 'admin'))
+            "GET", url1, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         liste_tp = res['node'][0]['ietf-network-topology:termination-point']
         for ele in liste_tp:
             if ele['tp-id'] == 'XPDR1-NETWORK1':
                 self.assertEqual({u'frequency': 196.1, u'width': 40},
-                                  ele['org-openroadm-network-topology:xpdr-network-attributes']['wavelength'])
+                                 ele['org-openroadm-network-topology:'
+                                     'xpdr-network-attributes'][
+                                     'wavelength'])
             if ele['tp-id'] == 'XPDR1-NETWORK2':
                 self.assertEqual({u'frequency': 196.05, u'width': 40},
-                                  ele['org-openroadm-network-topology:xpdr-network-attributes']['wavelength'])
-            if ele['tp-id'] == 'XPDR1-CLIENT1' or ele['tp-id'] == 'XPDR1-CLIENT3':
-                self.assertNotIn('org-openroadm-network-topology:xpdr-client-attributes', dict.keys(ele))
+                                 ele['org-openroadm-network-topology:'
+                                     'xpdr-network-attributes'][
+                                     'wavelength'])
+            if ele['tp-id'] == 'XPDR1-CLIENT1' or \
+               ele['tp-id'] == 'XPDR1-CLIENT3':
+                self.assertNotIn(
+                    'org-openroadm-network-topology:xpdr-client-attributes',
+                    dict.keys(ele))
         time.sleep(10)
 
     def test_26_check_topo_ROADMA_SRG1(self):
-        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/ROADMA01-SRG1"
-               .format(self.restconf_baseurl))
+        url1 = (
+            "{}/config/ietf-network:"
+            "networks/network/openroadm-topology/node/ROADMA01-SRG1"
+            .format(self.restconf_baseurl))
         response = requests.request(
-             "GET", url1, auth=('admin', 'admin'))
+            "GET", url1, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
-        self.assertNotIn({u'index': 1}, res['node'][0][u'org-openroadm-network-topology:srg-attributes']['available-wavelengths'])
-        self.assertNotIn({u'index': 2}, res['node'][0][u'org-openroadm-network-topology:srg-attributes']['available-wavelengths'])
+        self.assertNotIn({u'index': 1}, res['node'][0][
+            u'org-openroadm-network-topology:srg-attributes'][
+            'available-wavelengths'])
+        self.assertNotIn({u'index': 2}, res['node'][0][
+            u'org-openroadm-network-topology:srg-attributes'][
+            'available-wavelengths'])
         liste_tp = res['node'][0]['ietf-network-topology:termination-point']
         for ele in liste_tp:
             if ele['tp-id'] == 'SRG1-PP1-TXRX':
                 self.assertIn({u'index': 1, u'frequency': 196.1, u'width': 40},
-                               ele['org-openroadm-network-topology:pp-attributes']['used-wavelength'])
-                self.assertNotIn({u'index': 2, u'frequency': 196.05, u'width': 40},
-                                  ele['org-openroadm-network-topology:pp-attributes']['used-wavelength'])
+                              ele['org-openroadm-network-topology:'
+                                  'pp-attributes']['used-wavelength'])
+                self.assertNotIn({u'index': 2, u'frequency': 196.05,
+                                  u'width': 40},
+                                 ele['org-openroadm-network-topology:'
+                                     'pp-attributes']['used-wavelength'])
             if ele['tp-id'] == 'SRG1-PP2-TXRX':
                 self.assertIn({u'index': 2, u'frequency': 196.05, u'width': 40},
-                              ele['org-openroadm-network-topology:pp-attributes']['used-wavelength'])
-                self.assertNotIn({u'index': 1, u'frequency': 196.1, u'width': 40},
-                                  ele['org-openroadm-network-topology:pp-attributes']['used-wavelength'])
+                              ele['org-openroadm-network-topology:'
+                                  'pp-attributes']['used-wavelength'])
+                self.assertNotIn({u'index': 1, u'frequency': 196.1,
+                                  u'width': 40},
+                                 ele['org-openroadm-network-topology:'
+                                     'pp-attributes']['used-wavelength'])
             if ele['tp-id'] == 'SRG1-PP3-TXRX':
-                self.assertNotIn('org-openroadm-network-topology:pp-attributes', dict.keys(ele))
+                self.assertNotIn('org-openroadm-network-topology:pp-attributes',
+                                 dict.keys(ele))
         time.sleep(10)
 
     def test_27_check_topo_ROADMA_DEG1(self):
-        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/ROADMA01-DEG1"
-               .format(self.restconf_baseurl))
+        url1 = (
+            "{}/config/ietf-network:"
+            "networks/network/openroadm-topology/node/ROADMA01-DEG1"
+            .format(self.restconf_baseurl))
         response = requests.request(
-             "GET", url1, auth=('admin', 'admin'))
+            "GET", url1, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
-        self.assertNotIn({u'index': 1}, res['node'][0][u'org-openroadm-network-topology:degree-attributes']['available-wavelengths'])
-        self.assertNotIn({u'index': 2}, res['node'][0][u'org-openroadm-network-topology:degree-attributes']['available-wavelengths'])
+        self.assertNotIn({u'index': 1}, res['node'][0][
+            u'org-openroadm-network-topology:degree-attributes'][
+            'available-wavelengths'])
+        self.assertNotIn({u'index': 2}, res['node'][0][
+            u'org-openroadm-network-topology:degree-attributes'][
+            'available-wavelengths'])
         liste_tp = res['node'][0]['ietf-network-topology:termination-point']
         for ele in liste_tp:
             if ele['tp-id'] == 'DEG1-CTP-TXRX':
                 self.assertIn({u'index': 1, u'frequency': 196.1, u'width': 40},
-                               ele['org-openroadm-network-topology:ctp-attributes']['used-wavelengths'])
+                              ele['org-openroadm-network-topology:'
+                                  'ctp-attributes']['used-wavelengths'])
                 self.assertIn({u'index': 2, u'frequency': 196.05, u'width': 40},
-                              ele['org-openroadm-network-topology:ctp-attributes']['used-wavelengths'])
+                              ele['org-openroadm-network-topology:'
+                                  'ctp-attributes']['used-wavelengths'])
             if ele['tp-id'] == 'DEG1-TTP-TXRX':
                 self.assertIn({u'index': 1, u'frequency': 196.1, u'width': 40},
-                               ele['org-openroadm-network-topology:tx-ttp-attributes']['used-wavelengths'])
+                              ele['org-openroadm-network-topology:'
+                                  'tx-ttp-attributes']['used-wavelengths'])
                 self.assertIn({u'index': 2, u'frequency': 196.05, u'width': 40},
-                              ele['org-openroadm-network-topology:tx-ttp-attributes']['used-wavelengths'])
+                              ele['org-openroadm-network-topology:'
+                                  'tx-ttp-attributes']['used-wavelengths'])
         time.sleep(10)
 
-#     creation service test on a non-available resource
+    #     creation service test on a non-available resource
     def test_28_create_eth_service3(self):
         url = ("{}/operations/org-openroadm-service:service-create"
-              .format(self.restconf_baseurl))
-        data = {"input": {
+               .format(self.restconf_baseurl))
+        data = {
+            "input": {
                 "sdnc-request-header": {
                     "request-id": "e3028bae-a90f-4ddd-a83f-cf224eba0e58",
                     "rpc-action": "service-create",
                     "request-system-id": "appname",
-                    "notification-url": "http://localhost:8585/NotificationServer/notify"
+                    "notification-url":
+                        "http://localhost:8585/NotificationServer/notify"
                 },
                 "service-name": "service3",
                 "common-id": "ASATT1234567",
@@ -854,14 +967,16 @@ class TransportPCEFulltesting(unittest.TestCase):
                     "clli": "SNJSCAMCJP8",
                     "tx-direction": {
                         "port": {
-                            "port-device-name": "ROUTER_SNJSCAMCJP8_000000.00_00",
+                            "port-device-name":
+                                "ROUTER_SNJSCAMCJP8_000000.00_00",
                             "port-type": "router",
                             "port-name": "Gigabit Ethernet_Tx.ge-5/0/0.0",
                             "port-rack": "000000.00",
                             "port-shelf": "00"
                         },
                         "lgx": {
-                            "lgx-device-name": "LGX Panel_SNJSCAMCJP8_000000.00_00",
+                            "lgx-device-name":
+                                "LGX Panel_SNJSCAMCJP8_000000.00_00",
                             "lgx-port-name": "LGX Back.3",
                             "lgx-port-rack": "000000.00",
                             "lgx-port-shelf": "00"
@@ -869,14 +984,16 @@ class TransportPCEFulltesting(unittest.TestCase):
                     },
                     "rx-direction": {
                         "port": {
-                            "port-device-name": "ROUTER_SNJSCAMCJP8_000000.00_00",
+                            "port-device-name":
+                                "ROUTER_SNJSCAMCJP8_000000.00_00",
                             "port-type": "router",
                             "port-name": "Gigabit Ethernet_Rx.ge-5/0/0.0",
                             "port-rack": "000000.00",
                             "port-shelf": "00"
                         },
                         "lgx": {
-                            "lgx-device-name": "LGX Panel_SNJSCAMCJP8_000000.00_00",
+                            "lgx-device-name":
+                                "LGX Panel_SNJSCAMCJP8_000000.00_00",
                             "lgx-port-name": "LGX Back.4",
                             "lgx-port-rack": "000000.00",
                             "lgx-port-shelf": "00"
@@ -891,14 +1008,16 @@ class TransportPCEFulltesting(unittest.TestCase):
                     "clli": "SNJSCAMCJT4",
                     "tx-direction": {
                         "port": {
-                            "port-device-name": "ROUTER_SNJSCAMCJT4_000000.00_00",
+                            "port-device-name":
+                                "ROUTER_SNJSCAMCJT4_000000.00_00",
                             "port-type": "router",
                             "port-name": "Gigabit Ethernet_Tx.ge-1/0/0.0",
                             "port-rack": "000000.00",
                             "port-shelf": "00"
                         },
                         "lgx": {
-                            "lgx-device-name": "LGX Panel_SNJSCAMCJT4_000000.00_00",
+                            "lgx-device-name":
+                                "LGX Panel_SNJSCAMCJT4_000000.00_00",
                             "lgx-port-name": "LGX Back.29",
                             "lgx-port-rack": "000000.00",
                             "lgx-port-shelf": "00"
@@ -906,14 +1025,16 @@ class TransportPCEFulltesting(unittest.TestCase):
                     },
                     "rx-direction": {
                         "port": {
-                            "port-device-name": "ROUTER_SNJSCAMCJT4_000000.00_00",
+                            "port-device-name":
+                                "ROUTER_SNJSCAMCJT4_000000.00_00",
                             "port-type": "router",
                             "port-name": "Gigabit Ethernet_Rx.ge-1/0/0.0",
                             "port-rack": "000000.00",
                             "port-shelf": "00"
                         },
                         "lgx": {
-                            "lgx-device-name": "LGX Panel_SNJSCAMCJT4_000000.00_00",
+                            "lgx-device-name":
+                                "LGX Panel_SNJSCAMCJT4_000000.00_00",
                             "lgx-port-name": "LGX Back.30",
                             "lgx-port-rack": "000000.00",
                             "lgx-port-shelf": "00"
@@ -926,35 +1047,39 @@ class TransportPCEFulltesting(unittest.TestCase):
             }
         }
         headers = {'content-type': 'application/json',
-        "Accept": "application/json"}
+                   "Accept": "application/json"}
         response = requests.request(
             "POST", url, data=json.dumps(data), headers=headers,
             auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         self.assertIn('PCE calculation in progress',
-            res['output']['configuration-response-common']['response-message'])
-        self.assertIn('200', res['output']['configuration-response-common']['response-code'])
+                      res['output']['configuration-response-common'][
+                          'response-message'])
+        self.assertIn('200', res['output']['configuration-response-common'][
+            'response-code'])
         time.sleep(self.WAITING)
 
-# add a test that check the openroadm-service-list still only contains 2 elements
+    # add a test that check the openroadm-service-list still only
+    # contains 2 elements
 
     def test_29_delete_eth_service3(self):
         url = ("{}/operations/org-openroadm-service:service-delete"
-              .format(self.restconf_baseurl))
+               .format(self.restconf_baseurl))
         data = {"input": {
-                "sdnc-request-header": {
-                    "request-id": "e3028bae-a90f-4ddd-a83f-cf224eba0e58",
-                    "rpc-action": "service-delete",
-                    "request-system-id": "appname",
-                    "notification-url": "http://localhost:8585/NotificationServer/notify"
-                },
-                "service-delete-req-info": {
-                    "service-name": "service3",
-                    "tail-retention": "no"
-                }
+            "sdnc-request-header": {
+                "request-id": "e3028bae-a90f-4ddd-a83f-cf224eba0e58",
+                "rpc-action": "service-delete",
+                "request-system-id": "appname",
+                "notification-url":
+                    "http://localhost:8585/NotificationServer/notify"
+            },
+            "service-delete-req-info": {
+                "service-name": "service3",
+                "tail-retention": "no"
             }
         }
+        }
         headers = {'content-type': 'application/json'}
         response = requests.request(
             "POST", url, data=json.dumps(data), headers=headers,
@@ -962,26 +1087,29 @@ class TransportPCEFulltesting(unittest.TestCase):
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         self.assertIn('Service \'service3\' does not exist in datastore',
-            res['output']['configuration-response-common']['response-message'])
-        self.assertIn('500', res['output']['configuration-response-common']['response-code'])
+                      res['output']['configuration-response-common'][
+                          'response-message'])
+        self.assertIn('500', res['output']['configuration-response-common'][
+            'response-code'])
         time.sleep(20)
 
     def test_30_delete_eth_service1(self):
         url = ("{}/operations/org-openroadm-service:service-delete"
-              .format(self.restconf_baseurl))
+               .format(self.restconf_baseurl))
         data = {"input": {
-                "sdnc-request-header": {
-                    "request-id": "e3028bae-a90f-4ddd-a83f-cf224eba0e58",
-                    "rpc-action": "service-delete",
-                    "request-system-id": "appname",
-                    "notification-url": "http://localhost:8585/NotificationServer/notify"
-                },
-                "service-delete-req-info": {
-                    "service-name": "service1",
-                    "tail-retention": "no"
-                }
+            "sdnc-request-header": {
+                "request-id": "e3028bae-a90f-4ddd-a83f-cf224eba0e58",
+                "rpc-action": "service-delete",
+                "request-system-id": "appname",
+                "notification-url":
+                    "http://localhost:8585/NotificationServer/notify"
+            },
+            "service-delete-req-info": {
+                "service-name": "service1",
+                "tail-retention": "no"
             }
         }
+        }
         headers = {'content-type': 'application/json'}
         response = requests.request(
             "POST", url, data=json.dumps(data), headers=headers,
@@ -989,25 +1117,27 @@ class TransportPCEFulltesting(unittest.TestCase):
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         self.assertIn('Renderer service delete in progress',
-            res['output']['configuration-response-common']['response-message'])
+                      res['output']['configuration-response-common'][
+                          'response-message'])
         time.sleep(20)
 
     def test_31_delete_eth_service2(self):
         url = ("{}/operations/org-openroadm-service:service-delete"
-              .format(self.restconf_baseurl))
+               .format(self.restconf_baseurl))
         data = {"input": {
-                "sdnc-request-header": {
-                    "request-id": "e3028bae-a90f-4ddd-a83f-cf224eba0e58",
-                    "rpc-action": "service-delete",
-                    "request-system-id": "appname",
-                    "notification-url": "http://localhost:8585/NotificationServer/notify"
-                },
-                "service-delete-req-info": {
-                    "service-name": "service2",
-                    "tail-retention": "no"
-                }
+            "sdnc-request-header": {
+                "request-id": "e3028bae-a90f-4ddd-a83f-cf224eba0e58",
+                "rpc-action": "service-delete",
+                "request-system-id": "appname",
+                "notification-url":
+                    "http://localhost:8585/NotificationServer/notify"
+            },
+            "service-delete-req-info": {
+                "service-name": "service2",
+                "tail-retention": "no"
             }
         }
+        }
         headers = {'content-type': 'application/json'}
         response = requests.request(
             "POST", url, data=json.dumps(data), headers=headers,
@@ -1015,82 +1145,116 @@ class TransportPCEFulltesting(unittest.TestCase):
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         self.assertIn('Renderer service delete in progress',
-            res['output']['configuration-response-common']['response-message'])
+                      res['output']['configuration-response-common'][
+                          'response-message'])
         time.sleep(20)
 
     def test_32_check_no_xc_ROADMA(self):
-        url = ("{}/config/network-topology:network-topology/topology/topology-netconf/"
-               "node/ROADMA01/yang-ext:mount/org-openroadm-device:org-openroadm-device/"
-               .format(self.restconf_baseurl))
+        url = (
+            "{}/config/network-topology:"
+            "network-topology/topology/topology-netconf/"
+            "node/ROADMA01/yang-ext:"
+            "mount/org-openroadm-device:org-openroadm-device/"
+            .format(self.restconf_baseurl))
         response = requests.request(
-             "GET", url, auth=('admin', 'admin'))
+            "GET", url, auth=('admin', 'admin'))
         res = response.json()
         self.assertEqual(response.status_code, requests.codes.ok)
-        self.assertNotIn('roadm-connections', dict.keys(res['org-openroadm-device']))
+        self.assertNotIn('roadm-connections',
+                         dict.keys(res['org-openroadm-device']))
         time.sleep(2)
 
     def test_33_check_topo_XPDRA(self):
-        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/XPDRA01-XPDR1"
-               .format(self.restconf_baseurl))
+        url1 = (
+            "{}/config/ietf-network:"
+            "networks/network/openroadm-topology/node/XPDRA01-XPDR1"
+            .format(self.restconf_baseurl))
         response = requests.request(
-             "GET", url1, auth=('admin', 'admin'))
+            "GET", url1, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         liste_tp = res['node'][0]['ietf-network-topology:termination-point']
         for ele in liste_tp:
-            if ((ele[u'org-openroadm-common-network:tp-type'] == 'XPONDER-CLIENT')
-                and (ele['tp-id'] == 'XPDR1-CLIENT1' or ele['tp-id'] == 'XPDR1-CLIENT3')):
-                self.assertNotIn('org-openroadm-network-topology:xpdr-client-attributes', dict.keys(ele))
-            elif (ele[u'org-openroadm-common-network:tp-type'] == 'XPONDER-NETWORK'):
-                self.assertIn(u'tail-equipment-id', dict.keys(ele[u'org-openroadm-network-topology:xpdr-network-attributes']))
-                self.assertNotIn('wavelength', dict.keys(ele[u'org-openroadm-network-topology:xpdr-network-attributes']))
+            if ((ele[u'org-openroadm-common-network:tp-type'] ==
+                 'XPONDER-CLIENT')
+                and (ele['tp-id'] == 'XPDR1-CLIENT1' or ele[
+                    'tp-id'] == 'XPDR1-CLIENT3')):
+                self.assertNotIn(
+                    'org-openroadm-network-topology:xpdr-client-attributes',
+                    dict.keys(ele))
+            elif (ele[u'org-openroadm-common-network:tp-type'] ==
+                  'XPONDER-NETWORK'):
+                self.assertIn(u'tail-equipment-id', dict.keys(
+                    ele[u'org-openroadm-network-topology:'
+                        u'xpdr-network-attributes']))
+                self.assertNotIn('wavelength', dict.keys(
+                    ele[u'org-openroadm-network-topology:'
+                        u'xpdr-network-attributes']))
         time.sleep(10)
 
     def test_34_check_topo_ROADMA_SRG1(self):
-        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/ROADMA01-SRG1"
-               .format(self.restconf_baseurl))
+        url1 = (
+            "{}/config/ietf-network:"
+            "networks/network/openroadm-topology/node/ROADMA01-SRG1"
+            .format(self.restconf_baseurl))
         response = requests.request(
-             "GET", url1, auth=('admin', 'admin'))
+            "GET", url1, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
-        self.assertIn({u'index': 1}, res['node'][0][u'org-openroadm-network-topology:srg-attributes']['available-wavelengths'])
-        self.assertIn({u'index': 2}, res['node'][0][u'org-openroadm-network-topology:srg-attributes']['available-wavelengths'])
+        self.assertIn({u'index': 1}, res['node'][0][
+            u'org-openroadm-network-topology:srg-attributes'][
+            'available-wavelengths'])
+        self.assertIn({u'index': 2}, res['node'][0][
+            u'org-openroadm-network-topology:srg-attributes'][
+            'available-wavelengths'])
         liste_tp = res['node'][0]['ietf-network-topology:termination-point']
         for ele in liste_tp:
-            if ele['tp-id'] == 'SRG1-PP1-TXRX' or ele['tp-id'] == 'SRG1-PP1-TXRX':
-                self.assertNotIn('org-openroadm-network-topology:pp-attributes', dict.keys(ele))
+            if ele['tp-id'] == 'SRG1-PP1-TXRX' or \
+               ele['tp-id'] == 'SRG1-PP1-TXRX':
+                self.assertNotIn('org-openroadm-network-topology:pp-attributes',
+                                 dict.keys(ele))
             else:
-                self.assertNotIn('org-openroadm-network-topology:pp-attributes', dict.keys(ele))
+                self.assertNotIn('org-openroadm-network-topology:pp-attributes',
+                                 dict.keys(ele))
         time.sleep(10)
 
     def test_35_check_topo_ROADMA_DEG1(self):
-        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/ROADMA01-DEG1"
-               .format(self.restconf_baseurl))
+        url1 = (
+            "{}/config/ietf-network:"
+            "networks/network/openroadm-topology/node/ROADMA01-DEG1"
+            .format(self.restconf_baseurl))
         response = requests.request(
-             "GET", url1, auth=('admin', 'admin'))
+            "GET", url1, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
-        self.assertIn({u'index': 1}, res['node'][0][u'org-openroadm-network-topology:degree-attributes']['available-wavelengths'])
-        self.assertIn({u'index': 2}, res['node'][0][u'org-openroadm-network-topology:degree-attributes']['available-wavelengths'])
+        self.assertIn({u'index': 1}, res['node'][0][
+            u'org-openroadm-network-topology:degree-attributes'][
+            'available-wavelengths'])
+        self.assertIn({u'index': 2}, res['node'][0][
+            u'org-openroadm-network-topology:degree-attributes'][
+            'available-wavelengths'])
         liste_tp = res['node'][0]['ietf-network-topology:termination-point']
         for ele in liste_tp:
             if ele['tp-id'] == 'DEG1-CTP-TXRX':
-                self.assertNotIn('org-openroadm-network-topology:ctp-attributes', dict.keys(ele))
+                self.assertNotIn('org-openroadm-network-topology:'
+                                 'ctp-attributes', dict.keys(ele))
             if ele['tp-id'] == 'DEG1-TTP-TXRX':
-                self.assertNotIn('org-openroadm-network-topology:tx-ttp-attributes', dict.keys(ele))
+                self.assertNotIn('org-openroadm-network-topology:'
+                                 'tx-ttp-attributes', dict.keys(ele))
         time.sleep(10)
 
-
-# test service-create for Optical Channel (OC) service from srg-pp to srg-pp
+    # test service-create for Optical Channel (OC) service from srg-pp to srg-pp
     def test_36_create_oc_service1(self):
         url = ("{}/operations/org-openroadm-service:service-create"
-              .format(self.restconf_baseurl))
-        data = {"input": {
+               .format(self.restconf_baseurl))
+        data = {
+            "input": {
                 "sdnc-request-header": {
                     "request-id": "e3028bae-a90f-4ddd-a83f-cf224eba0e58",
                     "rpc-action": "service-create",
                     "request-system-id": "appname",
-                    "notification-url": "http://localhost:8585/NotificationServer/notify"
+                    "notification-url":
+                        "http://localhost:8585/NotificationServer/notify"
                 },
                 "service-name": "service1",
                 "common-id": "ASATT1234567",
@@ -1102,14 +1266,16 @@ class TransportPCEFulltesting(unittest.TestCase):
                     "clli": "SNJSCAMCJP8",
                     "tx-direction": {
                         "port": {
-                            "port-device-name": "ROUTER_SNJSCAMCJP8_000000.00_00",
+                            "port-device-name":
+                                "ROUTER_SNJSCAMCJP8_000000.00_00",
                             "port-type": "router",
                             "port-name": "Gigabit Ethernet_Tx.ge-5/0/0.0",
                             "port-rack": "000000.00",
                             "port-shelf": "00"
                         },
                         "lgx": {
-                            "lgx-device-name": "LGX Panel_SNJSCAMCJP8_000000.00_00",
+                            "lgx-device-name":
+                                "LGX Panel_SNJSCAMCJP8_000000.00_00",
                             "lgx-port-name": "LGX Back.3",
                             "lgx-port-rack": "000000.00",
                             "lgx-port-shelf": "00"
@@ -1117,14 +1283,16 @@ class TransportPCEFulltesting(unittest.TestCase):
                     },
                     "rx-direction": {
                         "port": {
-                            "port-device-name": "ROUTER_SNJSCAMCJP8_000000.00_00",
+                            "port-device-name":
+                                "ROUTER_SNJSCAMCJP8_000000.00_00",
                             "port-type": "router",
                             "port-name": "Gigabit Ethernet_Rx.ge-5/0/0.0",
                             "port-rack": "000000.00",
                             "port-shelf": "00"
                         },
                         "lgx": {
-                            "lgx-device-name": "LGX Panel_SNJSCAMCJP8_000000.00_00",
+                            "lgx-device-name":
+                                "LGX Panel_SNJSCAMCJP8_000000.00_00",
                             "lgx-port-name": "LGX Back.4",
                             "lgx-port-rack": "000000.00",
                             "lgx-port-shelf": "00"
@@ -1139,14 +1307,16 @@ class TransportPCEFulltesting(unittest.TestCase):
                     "clli": "SNJSCAMCJT4",
                     "tx-direction": {
                         "port": {
-                            "port-device-name": "ROUTER_SNJSCAMCJT4_000000.00_00",
+                            "port-device-name":
+                                "ROUTER_SNJSCAMCJT4_000000.00_00",
                             "port-type": "router",
                             "port-name": "Gigabit Ethernet_Tx.ge-1/0/0.0",
                             "port-rack": "000000.00",
                             "port-shelf": "00"
                         },
                         "lgx": {
-                            "lgx-device-name": "LGX Panel_SNJSCAMCJT4_000000.00_00",
+                            "lgx-device-name":
+                                "LGX Panel_SNJSCAMCJT4_000000.00_00",
                             "lgx-port-name": "LGX Back.29",
                             "lgx-port-rack": "000000.00",
                             "lgx-port-shelf": "00"
@@ -1154,14 +1324,16 @@ class TransportPCEFulltesting(unittest.TestCase):
                     },
                     "rx-direction": {
                         "port": {
-                            "port-device-name": "ROUTER_SNJSCAMCJT4_000000.00_00",
+                            "port-device-name":
+                                "ROUTER_SNJSCAMCJT4_000000.00_00",
                             "port-type": "router",
                             "port-name": "Gigabit Ethernet_Rx.ge-1/0/0.0",
                             "port-rack": "000000.00",
                             "port-shelf": "00"
                         },
                         "lgx": {
-                            "lgx-device-name": "LGX Panel_SNJSCAMCJT4_000000.00_00",
+                            "lgx-device-name":
+                                "LGX Panel_SNJSCAMCJT4_000000.00_00",
                             "lgx-port-name": "LGX Back.30",
                             "lgx-port-rack": "000000.00",
                             "lgx-port-shelf": "00"
@@ -1174,21 +1346,23 @@ class TransportPCEFulltesting(unittest.TestCase):
             }
         }
         headers = {'content-type': 'application/json',
-        "Accept": "application/json"}
+                   "Accept": "application/json"}
         response = requests.request(
             "POST", url, data=json.dumps(data), headers=headers,
             auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         self.assertIn('PCE calculation in progress',
-            res['output']['configuration-response-common']['response-message'])
+                      res['output']['configuration-response-common'][
+                          'response-message'])
         time.sleep(self.WAITING)
 
     def test_37_get_oc_service1(self):
-        url = ("{}/operational/org-openroadm-service:service-list/services/service1"
-              .format(self.restconf_baseurl))
+        url = ("{}/operational/org-openroadm-service:"
+               "service-list/services/service1"
+               .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json',
-        "Accept": "application/json"}
+                   "Accept": "application/json"}
         response = requests.request(
             "GET", url, headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
@@ -1205,62 +1379,70 @@ class TransportPCEFulltesting(unittest.TestCase):
         time.sleep(1)
 
     def test_38_check_xc1_ROADMA(self):
-        url = ("{}/config/network-topology:network-topology/topology/topology-netconf/"
-               "node/ROADMA01/yang-ext:mount/org-openroadm-device:org-openroadm-device/"
-               "roadm-connections/SRG1-PP1-TXRX-DEG1-TTP-TXRX-1"
-               .format(self.restconf_baseurl))
+        url = (
+            "{}/config/network-topology:"
+            "network-topology/topology/topology-netconf/"
+            "node/ROADMA01/yang-ext:"
+            "mount/org-openroadm-device:org-openroadm-device/"
+            "roadm-connections/SRG1-PP1-TXRX-DEG1-TTP-TXRX-1"
+            .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json'}
         response = requests.request(
-             "GET", url, headers=headers, auth=('admin', 'admin'))
+            "GET", url, headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         self.assertDictContainsSubset(
-             {'connection-number': 'SRG1-PP1-TXRX-DEG1-TTP-TXRX-1',
-              'wavelength-number': 1,
-              'opticalControlMode': 'gainLoss',
-              'target-output-power': -3.0},
-             res['roadm-connections'][0])
+            {'connection-number': 'SRG1-PP1-TXRX-DEG1-TTP-TXRX-1',
+             'wavelength-number': 1,
+             'opticalControlMode': 'gainLoss',
+             'target-output-power': -3.0},
+            res['roadm-connections'][0])
         self.assertDictEqual(
-             {'src-if': 'SRG1-PP1-TXRX-1'},
-             res['roadm-connections'][0]['source'])
+            {'src-if': 'SRG1-PP1-TXRX-1'},
+            res['roadm-connections'][0]['source'])
         self.assertDictEqual(
-             {'dst-if': 'DEG1-TTP-TXRX-1'},
-             res['roadm-connections'][0]['destination'])
+            {'dst-if': 'DEG1-TTP-TXRX-1'},
+            res['roadm-connections'][0]['destination'])
         time.sleep(7)
 
     def test_39_check_xc1_ROADMC(self):
-        url = ("{}/config/network-topology:network-topology/topology/topology-netconf/"
-               "node/ROADMC01/yang-ext:mount/org-openroadm-device:org-openroadm-device/"
-               "roadm-connections/SRG1-PP1-TXRX-DEG2-TTP-TXRX-1"
-               .format(self.restconf_baseurl))
+        url = (
+            "{}/config/network-topology:"
+            "network-topology/topology/topology-netconf/"
+            "node/ROADMC01/yang-ext:mount/org-openroadm-device:"
+            "org-openroadm-device/"
+            "roadm-connections/SRG1-PP1-TXRX-DEG2-TTP-TXRX-1"
+            .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json'}
         response = requests.request(
-             "GET", url, headers=headers, auth=('admin', 'admin'))
+            "GET", url, headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         self.assertDictContainsSubset(
-             {'connection-number': 'SRG1-PP1-TXRX-DEG2-TTP-TXRX-1',
-              'wavelength-number': 1,
-              'opticalControlMode': 'gainLoss',
-              'target-output-power': 2.0},
-             res['roadm-connections'][0])
+            {'connection-number': 'SRG1-PP1-TXRX-DEG2-TTP-TXRX-1',
+             'wavelength-number': 1,
+             'opticalControlMode': 'gainLoss',
+             'target-output-power': 2.0},
+            res['roadm-connections'][0])
         self.assertDictEqual(
-             {'src-if': 'SRG1-PP1-TXRX-1'},
-             res['roadm-connections'][0]['source'])
+            {'src-if': 'SRG1-PP1-TXRX-1'},
+            res['roadm-connections'][0]['source'])
         self.assertDictEqual(
-             {'dst-if': 'DEG2-TTP-TXRX-1'},
-             res['roadm-connections'][0]['destination'])
+            {'dst-if': 'DEG2-TTP-TXRX-1'},
+            res['roadm-connections'][0]['destination'])
         time.sleep(7)
 
     def test_40_create_oc_service2(self):
         url = ("{}/operations/org-openroadm-service:service-create"
-              .format(self.restconf_baseurl))
-        data = {"input": {
+               .format(self.restconf_baseurl))
+        data = {
+            "input": {
                 "sdnc-request-header": {
                     "request-id": "e3028bae-a90f-4ddd-a83f-cf224eba0e58",
                     "rpc-action": "service-create",
                     "request-system-id": "appname",
-                    "notification-url": "http://localhost:8585/NotificationServer/notify"
+                    "notification-url":
+                        "http://localhost:8585/NotificationServer/notify"
                 },
                 "service-name": "service2",
                 "common-id": "ASATT1234567",
@@ -1272,14 +1454,16 @@ class TransportPCEFulltesting(unittest.TestCase):
                     "clli": "SNJSCAMCJP8",
                     "tx-direction": {
                         "port": {
-                            "port-device-name": "ROUTER_SNJSCAMCJP8_000000.00_00",
+                            "port-device-name":
+                                "ROUTER_SNJSCAMCJP8_000000.00_00",
                             "port-type": "router",
                             "port-name": "Gigabit Ethernet_Tx.ge-5/0/0.0",
                             "port-rack": "000000.00",
                             "port-shelf": "00"
                         },
                         "lgx": {
-                            "lgx-device-name": "LGX Panel_SNJSCAMCJP8_000000.00_00",
+                            "lgx-device-name":
+                                "LGX Panel_SNJSCAMCJP8_000000.00_00",
                             "lgx-port-name": "LGX Back.3",
                             "lgx-port-rack": "000000.00",
                             "lgx-port-shelf": "00"
@@ -1287,14 +1471,16 @@ class TransportPCEFulltesting(unittest.TestCase):
                     },
                     "rx-direction": {
                         "port": {
-                            "port-device-name": "ROUTER_SNJSCAMCJP8_000000.00_00",
+                            "port-device-name":
+                                "ROUTER_SNJSCAMCJP8_000000.00_00",
                             "port-type": "router",
                             "port-name": "Gigabit Ethernet_Rx.ge-5/0/0.0",
                             "port-rack": "000000.00",
                             "port-shelf": "00"
                         },
                         "lgx": {
-                            "lgx-device-name": "LGX Panel_SNJSCAMCJP8_000000.00_00",
+                            "lgx-device-name":
+                                "LGX Panel_SNJSCAMCJP8_000000.00_00",
                             "lgx-port-name": "LGX Back.4",
                             "lgx-port-rack": "000000.00",
                             "lgx-port-shelf": "00"
@@ -1309,14 +1495,16 @@ class TransportPCEFulltesting(unittest.TestCase):
                     "clli": "SNJSCAMCJT4",
                     "tx-direction": {
                         "port": {
-                            "port-device-name": "ROUTER_SNJSCAMCJT4_000000.00_00",
+                            "port-device-name":
+                                "ROUTER_SNJSCAMCJT4_000000.00_00",
                             "port-type": "router",
                             "port-name": "Gigabit Ethernet_Tx.ge-1/0/0.0",
                             "port-rack": "000000.00",
                             "port-shelf": "00"
                         },
                         "lgx": {
-                            "lgx-device-name": "LGX Panel_SNJSCAMCJT4_000000.00_00",
+                            "lgx-device-name":
+                                "LGX Panel_SNJSCAMCJT4_000000.00_00",
                             "lgx-port-name": "LGX Back.29",
                             "lgx-port-rack": "000000.00",
                             "lgx-port-shelf": "00"
@@ -1324,14 +1512,16 @@ class TransportPCEFulltesting(unittest.TestCase):
                     },
                     "rx-direction": {
                         "port": {
-                            "port-device-name": "ROUTER_SNJSCAMCJT4_000000.00_00",
+                            "port-device-name":
+                                "ROUTER_SNJSCAMCJT4_000000.00_00",
                             "port-type": "router",
                             "port-name": "Gigabit Ethernet_Rx.ge-1/0/0.0",
                             "port-rack": "000000.00",
                             "port-shelf": "00"
                         },
                         "lgx": {
-                            "lgx-device-name": "LGX Panel_SNJSCAMCJT4_000000.00_00",
+                            "lgx-device-name":
+                                "LGX Panel_SNJSCAMCJT4_000000.00_00",
                             "lgx-port-name": "LGX Back.30",
                             "lgx-port-rack": "000000.00",
                             "lgx-port-shelf": "00"
@@ -1344,21 +1534,23 @@ class TransportPCEFulltesting(unittest.TestCase):
             }
         }
         headers = {'content-type': 'application/json',
-        "Accept": "application/json"}
+                   "Accept": "application/json"}
         response = requests.request(
             "POST", url, data=json.dumps(data), headers=headers,
             auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         self.assertIn('PCE calculation in progress',
-            res['output']['configuration-response-common']['response-message'])
+                      res['output']['configuration-response-common'][
+                          'response-message'])
         time.sleep(self.WAITING)
 
     def test_41_get_oc_service2(self):
-        url = ("{}/operational/org-openroadm-service:service-list/services/service2"
-              .format(self.restconf_baseurl))
+        url = ("{}/operational/org-openroadm-service:"
+               "service-list/services/service2"
+               .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json',
-        "Accept": "application/json"}
+                   "Accept": "application/json"}
         response = requests.request(
             "GET", url, headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
@@ -1375,27 +1567,30 @@ class TransportPCEFulltesting(unittest.TestCase):
         time.sleep(2)
 
     def test_42_check_xc2_ROADMA(self):
-        url = ("{}/config/network-topology:network-topology/topology/topology-netconf/"
-               "node/ROADMA01/yang-ext:mount/org-openroadm-device:org-openroadm-device/"
-               "roadm-connections/SRG1-PP2-TXRX-DEG1-TTP-TXRX-2"
-               .format(self.restconf_baseurl))
+        url = (
+            "{}/config/network-topology:"
+            "network-topology/topology/topology-netconf/"
+            "node/ROADMA01/yang-ext:mount/org-openroadm-device:"
+            "org-openroadm-device/"
+            "roadm-connections/SRG1-PP2-TXRX-DEG1-TTP-TXRX-2"
+            .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json'}
         response = requests.request(
-             "GET", url, headers=headers, auth=('admin', 'admin'))
+            "GET", url, headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         self.assertDictContainsSubset(
-             {'connection-number': 'SRG1-PP2-TXRX-DEG1-TTP-TXRX-2',
-              'wavelength-number': 2,
-              'opticalControlMode': 'gainLoss',
-              'target-output-power': -3.0},
-             res['roadm-connections'][0])
+            {'connection-number': 'SRG1-PP2-TXRX-DEG1-TTP-TXRX-2',
+             'wavelength-number': 2,
+             'opticalControlMode': 'gainLoss',
+             'target-output-power': -3.0},
+            res['roadm-connections'][0])
         self.assertDictEqual(
-             {'src-if': 'SRG1-PP2-TXRX-2'},
-             res['roadm-connections'][0]['source'])
+            {'src-if': 'SRG1-PP2-TXRX-2'},
+            res['roadm-connections'][0]['source'])
         self.assertDictEqual(
-             {'dst-if': 'DEG1-TTP-TXRX-2'},
-             res['roadm-connections'][0]['destination'])
+            {'dst-if': 'DEG1-TTP-TXRX-2'},
+            res['roadm-connections'][0]['destination'])
         time.sleep(2)
 
     def test_43_check_topo_ROADMA(self):
@@ -1405,20 +1600,21 @@ class TransportPCEFulltesting(unittest.TestCase):
 
     def test_44_delete_oc_service1(self):
         url = ("{}/operations/org-openroadm-service:service-delete"
-              .format(self.restconf_baseurl))
+               .format(self.restconf_baseurl))
         data = {"input": {
-                "sdnc-request-header": {
-                    "request-id": "e3028bae-a90f-4ddd-a83f-cf224eba0e58",
-                    "rpc-action": "service-delete",
-                    "request-system-id": "appname",
-                    "notification-url": "http://localhost:8585/NotificationServer/notify"
-                },
-                "service-delete-req-info": {
-                    "service-name": "service1",
-                    "tail-retention": "no"
-                }
+            "sdnc-request-header": {
+                "request-id": "e3028bae-a90f-4ddd-a83f-cf224eba0e58",
+                "rpc-action": "service-delete",
+                "request-system-id": "appname",
+                "notification-url":
+                    "http://localhost:8585/NotificationServer/notify"
+            },
+            "service-delete-req-info": {
+                "service-name": "service1",
+                "tail-retention": "no"
             }
         }
+        }
         headers = {'content-type': 'application/json'}
         response = requests.request(
             "POST", url, data=json.dumps(data), headers=headers,
@@ -1426,25 +1622,27 @@ class TransportPCEFulltesting(unittest.TestCase):
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         self.assertIn('Renderer service delete in progress',
-            res['output']['configuration-response-common']['response-message'])
+                      res['output']['configuration-response-common'][
+                          'response-message'])
         time.sleep(20)
 
     def test_45_delete_oc_service2(self):
         url = ("{}/operations/org-openroadm-service:service-delete"
-              .format(self.restconf_baseurl))
+               .format(self.restconf_baseurl))
         data = {"input": {
-                "sdnc-request-header": {
-                    "request-id": "e3028bae-a90f-4ddd-a83f-cf224eba0e58",
-                    "rpc-action": "service-delete",
-                    "request-system-id": "appname",
-                    "notification-url": "http://localhost:8585/NotificationServer/notify"
-                },
-                "service-delete-req-info": {
-                    "service-name": "service2",
-                    "tail-retention": "no"
-                }
+            "sdnc-request-header": {
+                "request-id": "e3028bae-a90f-4ddd-a83f-cf224eba0e58",
+                "rpc-action": "service-delete",
+                "request-system-id": "appname",
+                "notification-url":
+                    "http://localhost:8585/NotificationServer/notify"
+            },
+            "service-delete-req-info": {
+                "service-name": "service2",
+                "tail-retention": "no"
             }
         }
+        }
         headers = {'content-type': 'application/json'}
         response = requests.request(
             "POST", url, data=json.dumps(data), headers=headers,
@@ -1452,31 +1650,40 @@ class TransportPCEFulltesting(unittest.TestCase):
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
         self.assertIn('Renderer service delete in progress',
-            res['output']['configuration-response-common']['response-message'])
+                      res['output']['configuration-response-common'][
+                          'response-message'])
         time.sleep(20)
 
     def test_46_get_no_oc_services(self):
-        print ("start test")
+        print("start test")
         url = ("{}/operational/org-openroadm-service:service-list"
-              .format(self.restconf_baseurl))
+               .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json',
-        "Accept": "application/json"}
+                   "Accept": "application/json"}
         response = requests.request(
             "GET", url, headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.not_found)
         res = response.json()
         self.assertIn(
-            {"error-type":"application", "error-tag":"data-missing",
-             "error-message":"Request could not be completed because the relevant data model content does not exist"},
+            {
+                "error-type": "application",
+                "error-tag": "data-missing",
+                "error-message":
+                    "Request could not be completed because the relevant data "
+                    "model content does not exist"
+            },
             res['errors']['error'])
         time.sleep(1)
 
     def test_47_get_no_xc_ROADMA(self):
-        url = ("{}/config/network-topology:network-topology/topology/topology-netconf"
-               "/node/ROADMA01/yang-ext:mount/org-openroadm-device:org-openroadm-device/"
-              .format(self.restconf_baseurl))
+        url = (
+            "{}/config/network-topology:"
+            "network-topology/topology/topology-netconf"
+            "/node/ROADMA01/yang-ext:mount/org-openroadm-device:"
+            "org-openroadm-device/"
+            .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json',
-        "Accept": "application/json"}
+                   "Accept": "application/json"}
         response = requests.request(
             "GET", url, headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
@@ -1489,19 +1696,20 @@ class TransportPCEFulltesting(unittest.TestCase):
         self.test_35_check_topo_ROADMA_DEG1()
 
     def test_49_loop_create_eth_service(self):
-        for i in range(1,6):
-            print ("trial number {}".format(i))
+        for i in range(1, 6):
+            print("trial number {}".format(i))
             print("eth service creation")
             self.test_11_create_eth_service1()
-            print ("check xc in ROADMA01")
+            print("check xc in ROADMA01")
             self.test_13_check_xc1_ROADMA()
-            print ("check xc in ROADMC01")
+            print("check xc in ROADMC01")
             self.test_14_check_xc1_ROADMC()
-            print ("eth service deletion\n")
+            print("eth service deletion\n")
             self.test_30_delete_eth_service1()
 
     def test_50_loop_create_oc_service(self):
-        url = ("{}/operational/org-openroadm-service:service-list/services/service1"
+        url = ("{}/operational/org-openroadm-service:"
+               "service-list/services/service1"
                .format(self.restconf_baseurl))
         response = requests.request("GET", url, auth=('admin', 'admin'))
         if response.status_code != 404:
@@ -1512,70 +1720,74 @@ class TransportPCEFulltesting(unittest.TestCase):
                     "request-id": "e3028bae-a90f-4ddd-a83f-cf224eba0e58",
                     "rpc-action": "service-delete",
                     "request-system-id": "appname",
-                    "notification-url": "http://localhost:8585/NotificationServer/notify"
-            },
+                    "notification-url":
+                        "http://localhost:8585/NotificationServer/notify"
+                },
                 "service-delete-req-info": {
                     "service-name": "service1",
                     "tail-retention": "no"
-            }
                 }
             }
+            }
             headers = {'content-type': 'application/json'}
-            requests.request("POST", url, data=json.dumps(data), headers=headers, auth=('admin', 'admin'))
+            requests.request("POST", url, data=json.dumps(data),
+                             headers=headers,
+                             auth=('admin', 'admin')
+                             )
             time.sleep(5)
 
-        for i in range(1,6):
-            print ("trial number {}".format(i))
+        for i in range(1, 6):
+            print("trial number {}".format(i))
             print("oc service creation")
             self.test_36_create_oc_service1()
-            print ("check xc in ROADMA01")
+            print("check xc in ROADMA01")
             self.test_38_check_xc1_ROADMA()
-            print ("check xc in ROADMC01")
+            print("check xc in ROADMC01")
             self.test_39_check_xc1_ROADMC()
-            print ("oc service deletion\n")
+            print("oc service deletion\n")
             self.test_44_delete_oc_service1()
 
     def test_51_disconnect_XPDRA(self):
         url = ("{}/config/network-topology:"
-                "network-topology/topology/topology-netconf/node/XPDRA01"
+               "network-topology/topology/topology-netconf/node/XPDRA01"
                .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json'}
         response = requests.request(
-             "DELETE", url, headers=headers,
-             auth=('admin', 'admin'))
+            "DELETE", url, headers=headers,
+            auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         time.sleep(10)
 
     def test_52_disconnect_XPDRC(self):
         url = ("{}/config/network-topology:"
-                "network-topology/topology/topology-netconf/node/XPDRC01"
+               "network-topology/topology/topology-netconf/node/XPDRC01"
                .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json'}
         response = requests.request(
-             "DELETE", url, headers=headers,
-             auth=('admin', 'admin'))
+            "DELETE", url, headers=headers,
+            auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         time.sleep(10)
 
     def test_53_disconnect_ROADMA(self):
         url = ("{}/config/network-topology:"
-                "network-topology/topology/topology-netconf/node/ROADMA01"
+               "network-topology/topology/topology-netconf/node/ROADMA01"
                .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json'}
         response = requests.request(
-             "DELETE", url, headers=headers,
-             auth=('admin', 'admin'))
+            "DELETE", url, headers=headers,
+            auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         time.sleep(10)
 
     def test_54_disconnect_ROADMC(self):
         url = ("{}/config/network-topology:"
-                "network-topology/topology/topology-netconf/node/ROADMC01"
+               "network-topology/topology/topology-netconf/node/ROADMC01"
                .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json'}
         response = requests.request(
-             "DELETE", url, headers=headers,
-             auth=('admin', 'admin'))
+            "DELETE", url, headers=headers,
+            auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         time.sleep(10)
 
index 469b8a6d2113ae072ca34d3e80c8db81c1ee391d..447d74cd590c85e7e26eb7bf97eb3b9fad09a319 100644 (file)
@@ -1,7 +1,7 @@
 #!/usr/bin/env python
 
 ##############################################################################
-#Copyright (c) 2017 Orange, Inc. and others.  All rights reserved.
+# Copyright (c) 2017 Orange, Inc. and others.  All rights reserved.
 #
 # All rights reserved. This program and the accompanying materials
 # are made available under the terms of the Apache License, Version 2.0
@@ -14,13 +14,11 @@ import os
 import psutil
 import requests
 import signal
-import shutil
-import subprocess
 import time
 import unittest
-import logging
 import test_utils
 
+
 class TransportGNPYtesting(unittest.TestCase):
 
     gnpy_process = None
@@ -34,10 +32,10 @@ class TransportGNPYtesting(unittest.TestCase):
 
     @classmethod
     def setUpClass(cls):
-        print ("starting opendaylight...")
+        print("starting opendaylight...")
         cls.odl_process = test_utils.start_tpce()
         time.sleep(30)
-        print ("opendaylight started")
+        print("opendaylight started")
 
     @classmethod
     def tearDownClass(cls):
@@ -50,13 +48,13 @@ class TransportGNPYtesting(unittest.TestCase):
     def setUp(self):
         time.sleep(2)
 
-    #Mount the different topologies
+    # Mount the different topologies
     def test_01_connect_clliNetwork(self):
         url = ("{}/config/ietf-network:networks/network/clli-network"
                .format(self.restconf_baseurl))
-        topo_clliNet_file = "sample_configs/gnpy/clliNetwork.json"
-        if os.path.isfile(topo_clliNet_file):
-            with open(topo_clliNet_file, 'r') as clli_net:
+        topo_cllinet_file = "sample_configs/gnpy/clliNetwork.json"
+        if os.path.isfile(topo_cllinet_file):
+            with open(topo_cllinet_file, 'r') as clli_net:
                 body = clli_net.read()
         headers = {'content-type': 'application/json'}
         response = requests.request(
@@ -68,9 +66,9 @@ class TransportGNPYtesting(unittest.TestCase):
     def test_02_connect_openroadmNetwork(self):
         url = ("{}/config/ietf-network:networks/network/openroadm-network"
                .format(self.restconf_baseurl))
-        topo_ordNet_file = "sample_configs/gnpy/openroadmNetwork.json"
-        if os.path.isfile(topo_ordNet_file):
-            with open(topo_ordNet_file, 'r') as ord_net:
+        topo_ordnet_file = "sample_configs/gnpy/openroadmNetwork.json"
+        if os.path.isfile(topo_ordnet_file):
+            with open(topo_ordnet_file, 'r') as ord_net:
                 body = ord_net.read()
         headers = {'content-type': 'application/json'}
         response = requests.request(
@@ -82,9 +80,9 @@ class TransportGNPYtesting(unittest.TestCase):
     def test_03_connect_openroadmTopology(self):
         url = ("{}/config/ietf-network:networks/network/openroadm-topology"
                .format(self.restconf_baseurl))
-        topo_ordTopo_file = "sample_configs/gnpy/openroadmTopology.json"
-        if os.path.isfile(topo_ordTopo_file):
-            with open(topo_ordTopo_file, 'r') as ord_topo:
+        topo_ordtopo_file = "sample_configs/gnpy/openroadmTopology.json"
+        if os.path.isfile(topo_ordtopo_file):
+            with open(topo_ordtopo_file, 'r') as ord_topo:
                 body = ord_topo.read()
         headers = {'content-type': 'application/json'}
         response = requests.request(
@@ -93,11 +91,12 @@ class TransportGNPYtesting(unittest.TestCase):
         self.assertEqual(response.status_code, requests.codes.ok)
         time.sleep(3)
 
-    #Path computed by PCE is feasible according to Gnpy
+    # Path computed by PCE is feasible according to Gnpy
     def test_04_path_computation_FeasibleWithPCE(self):
         url = ("{}/operations/transportpce-pce:path-computation-request"
-              .format(self.restconf_baseurl))
-        body = {"input": {
+               .format(self.restconf_baseurl))
+        body = {
+            "input": {
                 "service-name": "service-1",
                 "resource-reserve": "true",
                 "pce-metric": "hop-count",
@@ -119,26 +118,32 @@ class TransportGNPYtesting(unittest.TestCase):
             }
         }
         headers = {'content-type': 'application/json',
-        "Accept": "application/json"}
+                   "Accept": "application/json"}
         response = requests.request(
             "POST", url, data=json.dumps(body), headers=headers,
             auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
-        self.assertEqual(res['output']['configuration-response-common']['response-code'], '200')
-        self.assertEqual(res['output']['configuration-response-common']['response-message'],
+        self.assertEqual(res['output']['configuration-response-common'][
+                             'response-code'], '200')
+        self.assertEqual(res['output']['configuration-response-common'][
+                             'response-message'],
                          'Path is calculated by PCE')
-        self.assertEqual(res['output']['gnpy-response'][0]['path-dir'], 'A-to-Z')
-        self.assertEqual(res['output']['gnpy-response'][0]['feasibility'],True)
-        self.assertEqual(res['output']['gnpy-response'][1]['path-dir'], 'Z-to-A')
-        self.assertEqual(res['output']['gnpy-response'][1]['feasibility'],True)
+        self.assertEqual(res['output']['gnpy-response'][0]['path-dir'],
+                         'A-to-Z')
+        self.assertEqual(res['output']['gnpy-response'][0]['feasibility'], True)
+        self.assertEqual(res['output']['gnpy-response'][1]['path-dir'],
+                         'Z-to-A')
+        self.assertEqual(res['output']['gnpy-response'][1]['feasibility'], True)
         time.sleep(5)
 
-    #Path computed by PCE is not feasible by GNPy and GNPy cannot find another one (low SNR)
+    # Path computed by PCE is not feasible by GNPy and GNPy cannot find
+    # another one (low SNR)
     def test_05_path_computation_FoundByPCE_NotFeasibleByGnpy(self):
         url = ("{}/operations/transportpce-pce:path-computation-request"
-              .format(self.restconf_baseurl))
-        body = {"input": {
+               .format(self.restconf_baseurl))
+        body = {
+            "input": {
                 "service-name": "service-2",
                 "resource-reserve": "true",
                 "pce-metric": "hop-count",
@@ -184,26 +189,33 @@ class TransportGNPYtesting(unittest.TestCase):
             }
         }
         headers = {'content-type': 'application/json',
-        "Accept": "application/json"}
+                   "Accept": "application/json"}
         response = requests.request(
             "POST", url, data=json.dumps(body), headers=headers,
             auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
-        self.assertEqual(res['output']['configuration-response-common']['response-code'], '500')
-        self.assertEqual(res['output']['configuration-response-common']['response-message'],
+        self.assertEqual(res['output']['configuration-response-common'][
+                             'response-code'], '500')
+        self.assertEqual(res['output']['configuration-response-common'][
+                             'response-message'],
                          'No path available by PCE and GNPy ')
-        self.assertEqual(res['output']['gnpy-response'][0]['path-dir'], 'A-to-Z')
-        self.assertEqual(res['output']['gnpy-response'][0]['feasibility'],False)
-        self.assertEqual(res['output']['gnpy-response'][1]['path-dir'], 'Z-to-A')
-        self.assertEqual(res['output']['gnpy-response'][1]['feasibility'],False)
+        self.assertEqual(res['output']['gnpy-response'][0]['path-dir'],
+                         'A-to-Z')
+        self.assertEqual(res['output']['gnpy-response'][0]['feasibility'],
+                         False)
+        self.assertEqual(res['output']['gnpy-response'][1]['path-dir'],
+                         'Z-to-A')
+        self.assertEqual(res['output']['gnpy-response'][1]['feasibility'],
+                         False)
         time.sleep(5)
 
     # #PCE cannot find a path while GNPy finds a feasible one
     def test_06_path_computation_NotFoundByPCE_FoundByGNPy(self):
         url = ("{}/operations/transportpce-pce:path-computation-request"
-              .format(self.restconf_baseurl))
-        body = {"input": {
+               .format(self.restconf_baseurl))
+        body = {
+            "input": {
                 "service-name": "service-3",
                 "resource-reserve": "true",
                 "pce-metric": "hop-count",
@@ -243,26 +255,31 @@ class TransportGNPYtesting(unittest.TestCase):
             }
         }
         headers = {'content-type': 'application/json',
-        "Accept": "application/json"}
+                   "Accept": "application/json"}
         response = requests.request(
             "POST", url, data=json.dumps(body), headers=headers,
             auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
-        self.assertEqual(res['output']['configuration-response-common']['response-code'], '200')
-        self.assertEqual(res['output']['configuration-response-common']['response-message'],
+        self.assertEqual(res['output']['configuration-response-common'][
+                             'response-code'], '200')
+        self.assertEqual(res['output']['configuration-response-common'][
+                             'response-message'],
                          'Path is calculated by GNPy')
-        self.assertEqual(res['output']['gnpy-response'][0]['path-dir'], 'A-to-Z')
-        self.assertEqual(res['output']['gnpy-response'][0]['feasibility'],True)
-        self.assertEqual(res['output']['gnpy-response'][1]['path-dir'], 'Z-to-A')
-        self.assertEqual(res['output']['gnpy-response'][1]['feasibility'],True)
+        self.assertEqual(res['output']['gnpy-response'][0]['path-dir'],
+                         'A-to-Z')
+        self.assertEqual(res['output']['gnpy-response'][0]['feasibility'], True)
+        self.assertEqual(res['output']['gnpy-response'][1]['path-dir'],
+                         'Z-to-A')
+        self.assertEqual(res['output']['gnpy-response'][1]['feasibility'], True)
         time.sleep(5)
 
-    #Not found path by PCE and GNPy cannot find another one
+    # Not found path by PCE and GNPy cannot find another one
     def test_07_path_computation_FoundByPCE_NotFeasibleByGnpy(self):
         url = ("{}/operations/transportpce-pce:path-computation-request"
-              .format(self.restconf_baseurl))
-        body = {"input": {
+               .format(self.restconf_baseurl))
+        body = {
+            "input": {
                 "service-name": "service-4",
                 "resource-reserve": "true",
                 "pce-metric": "hop-count",
@@ -314,18 +331,20 @@ class TransportGNPYtesting(unittest.TestCase):
             }
         }
         headers = {'content-type': 'application/json',
-        "Accept": "application/json"}
+                   "Accept": "application/json"}
         response = requests.request(
             "POST", url, data=json.dumps(body), headers=headers,
             auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
-        self.assertEqual(res['output']['configuration-response-common']['response-code'], '500')
-        self.assertEqual(res['output']['configuration-response-common']['response-message'],
+        self.assertEqual(res['output']['configuration-response-common'][
+                             'response-code'], '500')
+        self.assertEqual(res['output']['configuration-response-common'][
+                             'response-message'],
                          'No path available by PCE and GNPy ')
         time.sleep(5)
 
-    #Disconnect the different topologies
+    # Disconnect the different topologies
     def test_08_disconnect_openroadmTopology(self):
         url = ("{}/config/ietf-network:networks/network/openroadm-topology"
                .format(self.restconf_baseurl))
@@ -359,6 +378,7 @@ class TransportGNPYtesting(unittest.TestCase):
         self.assertEqual(response.status_code, requests.codes.ok)
         time.sleep(3)
 
+
 if __name__ == "__main__":
-    #logging.basicConfig(filename='./transportpce_tests/log/response.log',filemode='w',level=logging.DEBUG)
+    # logging.basicConfig(filename='./transportpce_tests/log/response.log',filemode='w',level=logging.DEBUG)
     unittest.main(verbosity=2)
index 5d9aacf59bdb3c53196ba0e151b427bb3b73c12d..b66ea72adc02ecf160b0dedc5399dbcdd0147fe0 100644 (file)
@@ -1,80 +1,78 @@
 import os
 import subprocess
 
+honeynode_executable=os.path.join(
+        os.path.dirname(os.path.realpath(__file__)),
+        "..", "..", "honeynode", "1.2.1", "honeynode-distribution", "target", "honeynode-distribution-1.19.04-hc",
+        "honeynode-distribution-1.19.04", "honeycomb-tpce")
+samples_directory=os.path.join(
+        os.path.dirname(os.path.realpath(__file__)),
+        "..", "..", "sample_configs", "openroadm","1.2.1")
 def start_xpdra_honeynode():
-    executable = ("./honeynode/1.2.1/honeynode-distribution/target/honeynode-distribution-1.19.04-hc"
-                  "/honeynode-distribution-1.19.04/honeycomb-tpce")
-    if os.path.isfile(executable):
+    if os.path.isfile(honeynode_executable):
         with open('honeynode1.log', 'w') as outfile:
             return subprocess.Popen(
-                [executable, "17830", "sample_configs/openroadm/1.2.1/oper-XPDRA.xml"],
+                [honeynode_executable, "17830", os.path.join(samples_directory,"oper-XPDRA.xml")],
                 stdout=outfile, stderr=outfile)
 
 def start_roadma_full_honeynode():
-    executable = ("./honeynode/1.2.1/honeynode-distribution/target/honeynode-distribution-1.19.04-hc"
-                  "/honeynode-distribution-1.19.04/honeycomb-tpce")
-    if os.path.isfile(executable):
+    if os.path.isfile(honeynode_executable):
         with open('honeynode2.log', 'w') as outfile:
             return subprocess.Popen(
-                [executable, "17821", "sample_configs/openroadm/1.2.1/oper-ROADMA-full.xml"],
+                [honeynode_executable, "17821", os.path.join(samples_directory,"oper-ROADMA-full.xml")],
                 stdout=outfile, stderr=outfile)
 
 def start_roadma_honeynode():
-    executable = ("./honeynode/1.2.1/honeynode-distribution/target/honeynode-distribution-1.19.04-hc"
-                  "/honeynode-distribution-1.19.04/honeycomb-tpce")
-    if os.path.isfile(executable):
+    if os.path.isfile(honeynode_executable):
         with open('honeynode2.log', 'w') as outfile:
             return subprocess.Popen(
-                [executable, "17831", "sample_configs/openroadm/1.2.1/oper-ROADMA.xml"],
+                [honeynode_executable, "17831", os.path.join(samples_directory,"oper-ROADMA.xml")],
                 stdout=outfile, stderr=outfile)
 
 def start_roadmb_honeynode():
-    executable = ("./honeynode/1.2.1/honeynode-distribution/target/honeynode-distribution-1.19.04-hc"
-                  "/honeynode-distribution-1.19.04/honeycomb-tpce")
-    if os.path.isfile(executable):
+    if os.path.isfile(honeynode_executable):
         with open('honeynode3.log', 'w') as outfile:
             return subprocess.Popen(
-                [executable, "17832", "sample_configs/openroadm/1.2.1/oper-ROADMB.xml"],
+                [honeynode_executable, "17832", os.path.join(samples_directory,"oper-ROADMB.xml")],
                 stdout=outfile, stderr=outfile)
 
 def start_roadmc_full_honeynode():
-    executable = ("./honeynode/1.2.1/honeynode-distribution/target/honeynode-distribution-1.19.04-hc"
-                  "/honeynode-distribution-1.19.04/honeycomb-tpce")
-    if os.path.isfile(executable):
+    if os.path.isfile(honeynode_executable):
         with open('honeynode3.log', 'w') as outfile:
             return subprocess.Popen(
-                [executable, "17823", "sample_configs/openroadm/1.2.1/oper-ROADMC-full.xml"],
+                [honeynode_executable, "17823", os.path.join(samples_directory,"oper-ROADMC-full.xml")],
                 stdout=outfile, stderr=outfile)
 
 def start_roadmc_honeynode():
-    executable = ("./honeynode/1.2.1/honeynode-distribution/target/honeynode-distribution-1.19.04-hc"
-                  "/honeynode-distribution-1.19.04/honeycomb-tpce")
-    if os.path.isfile(executable):
+    if os.path.isfile(honeynode_executable):
         with open('honeynode4.log', 'w') as outfile:
             return subprocess.Popen(
-                [executable, "17833", "sample_configs/openroadm/1.2.1/oper-ROADMC.xml"],
+                [honeynode_executable, "17833", os.path.join(samples_directory,"oper-ROADMC.xml")],
                 stdout=outfile, stderr=outfile)
 
 def start_xpdrc_honeynode():
-    executable = ("./honeynode/1.2.1/honeynode-distribution/target/honeynode-distribution-1.19.04-hc"
-                  "/honeynode-distribution-1.19.04/honeycomb-tpce")
-    if os.path.isfile(executable):
+    if os.path.isfile(honeynode_executable):
         with open('honeynode4.log', 'w') as outfile:
             return subprocess.Popen(
-                [executable, "17834", "sample_configs/openroadm/1.2.1/oper-XPDRC.xml"],
+                [honeynode_executable, "17834", os.path.join(samples_directory,"oper-XPDRC.xml")],
                 stdout=outfile, stderr=outfile)
 
 def start_tpce():
     if "USE_LIGHTY" in os.environ and os.environ['USE_LIGHTY'] == 'True':
         print ("starting LIGHTY.IO TransportPCE build...")
-        executable = "../lighty/target/lighty-transportpce-12.0.0-SNAPSHOT/clean-start-controller.sh"
+        executable = os.path.join(
+                os.path.dirname(os.path.realpath(__file__)),
+                "..", "..", "..", "lighty", "target", "lighty-transportpce-12.0.0-SNAPSHOT",
+                "clean-start-controller.sh")
         with open('odl.log', 'w') as outfile:
             return subprocess.Popen(
                 ["sh", executable], stdout=outfile, stderr=outfile,
                 stdin=open(os.devnull))
     else:
         print ("starting KARAF TransportPCE build...")
-        executable = "../karaf/target/assembly/bin/karaf"
+        executable = os.path.join(
+                os.path.dirname(os.path.realpath(__file__)),
+                "..", "..", "..", "karaf", "target", "assembly", "bin", "karaf")
         with open('odl.log', 'w') as outfile:
             return subprocess.Popen(
                 ["sh", executable, "server"], stdout=outfile, stderr=outfile,
index ec577ad0743090969f50aeac59158157f419d398..612a991718d0509a8c6b7ee14297d029018327a7 100644 (file)
@@ -1,71 +1,72 @@
 import os
 import subprocess
 
+honeynode_executable=os.path.join(
+        os.path.dirname(os.path.realpath(__file__)),
+        "..", "..", "honeynode", "2.2.1", "honeynode-distribution", "target", "honeynode-distribution-1.19.04-hc",
+        "honeynode-distribution-1.19.04", "honeycomb-tpce")
+samples_directory=os.path.join(
+        os.path.dirname(os.path.realpath(__file__)),
+        "..", "..", "sample_configs", "openroadm", "2.2.1")
+
 def start_xpdra_honeynode():
-    executable = ("./honeynode/2.2.1/honeynode-distribution/target/honeynode-distribution-1.19.04-hc"
-                  "/honeynode-distribution-1.19.04/honeycomb-tpce")
-    if os.path.isfile(executable):
+    if os.path.isfile(honeynode_executable):
         with open('honeynode1.log', 'w') as outfile:
             return subprocess.Popen(
-                [executable, "17840", "sample_configs/openroadm/2.2.1/oper-XPDRA.xml"],
+                [honeynode_executable, "17840", os.path.join(samples_directory,"oper-XPDRA.xml")],
                 stdout=outfile, stderr=outfile)
 
 def start_roadma_honeynode():
-    executable = ("./honeynode/2.2.1/honeynode-distribution/target/honeynode-distribution-1.19.04-hc"
-                  "/honeynode-distribution-1.19.04/honeycomb-tpce")
-    if os.path.isfile(executable):
+    if os.path.isfile(honeynode_executable):
         with open('honeynode2.log', 'w') as outfile:
             return subprocess.Popen(
-                [executable, "17841", "sample_configs/openroadm/2.2.1/oper-ROADMA.xml"],
+                [honeynode_executable, "17841", os.path.join(samples_directory,"oper-ROADMA.xml")],
                 stdout=outfile, stderr=outfile)
 
 def start_roadmb_honeynode():
-    executable = ("./honeynode/2.2.1/honeynode-distribution/target/honeynode-distribution-1.19.04-hc"
-                  "/honeynode-distribution-1.19.04/honeycomb-tpce")
-    if os.path.isfile(executable):
+    if os.path.isfile(honeynode_executable):
         with open('honeynode5.log', 'w') as outfile:
             return subprocess.Popen(
-                [executable, "17842", "sample_configs/openroadm/2.2.1/oper-ROADMB.xml"],
+                [honeynode_executable, "17842", os.path.join(samples_directory,"oper-ROADMB.xml")],
                 stdout=outfile, stderr=outfile)
 
 def start_roadmc_honeynode():
-    executable = ("./honeynode/2.2.1/honeynode-distribution/target/honeynode-distribution-1.19.04-hc"
-                  "/honeynode-distribution-1.19.04/honeycomb-tpce")
-    if os.path.isfile(executable):
+    if os.path.isfile(honeynode_executable):
         with open('honeynode3.log', 'w') as outfile:
             return subprocess.Popen(
-                [executable, "17843", "sample_configs/openroadm/2.2.1/oper-ROADMC.xml"],
+                [honeynode_executable, "17843", os.path.join(samples_directory,"oper-ROADMC.xml")],
                 stdout=outfile, stderr=outfile)
 
 def start_xpdrc_honeynode():
-    executable = ("./honeynode/2.2.1/honeynode-distribution/target/honeynode-distribution-1.19.04-hc"
-                  "/honeynode-distribution-1.19.04/honeycomb-tpce")
-    if os.path.isfile(executable):
+    if os.path.isfile(honeynode_executable):
         with open('honeynode4.log', 'w') as outfile:
             return subprocess.Popen(
-                [executable, "17844", "sample_configs/openroadm/2.2.1/oper-XPDRC.xml"],
+                [honeynode_executable, "17844", os.path.join(samples_directory,"oper-XPDRC.xml")],
                 stdout=outfile, stderr=outfile)
 
 def start_spdra_honeynode():
-    executable = ("./honeynode/2.2.1/honeynode-distribution/target/honeynode-distribution-1.19.04-hc"
-                  "/honeynode-distribution-1.19.04/honeycomb-tpce")
-    if os.path.isfile(executable):
+    if os.path.isfile(honeynode_executable):
         with open('honeynode6.log', 'w') as outfile:
             return subprocess.Popen(
-                [executable, "17845", "sample_configs/openroadm/2.2.1/oper-SPDRAv2.xml"],
+                [honeynode_executable, "17845", os.path.join(samples_directory,"oper-SPDRAv2.xml")],
                 stdout=outfile, stderr=outfile)
 
 def start_tpce():
     if "USE_LIGHTY" in os.environ and os.environ['USE_LIGHTY'] == 'True':
         print ("starting LIGHTY.IO TransportPCE build...")
-        executable = "../lighty/target/lighty-transportpce-12.0.0-SNAPSHOT/clean-start-controller.sh"
+        executable = os.path.join(
+                os.path.dirname(os.path.realpath(__file__)),
+                "..", "..", "..", "lighty", "target", "lighty-transportpce-12.0.0-SNAPSHOT",
+                "clean-start-controller.sh")
         with open('odl.log', 'w') as outfile:
             return subprocess.Popen(
                 ["sh", executable], stdout=outfile, stderr=outfile,
                 stdin=open(os.devnull))
     else:
         print ("starting KARAF TransportPCE build...")
-        executable = "../karaf/target/assembly/bin/karaf"
+        executable = os.path.join(
+                os.path.dirname(os.path.realpath(__file__)),
+                "..", "..", "..", "karaf", "target", "assembly", "bin", "karaf")
         with open('odl.log', 'w') as outfile:
             return subprocess.Popen(
                 ["sh", executable, "server"], stdout=outfile, stderr=outfile,