fix deprecated openroadm interfaces/objects
[transportpce.git] / tests / transportpce_tests / 1.2.1 / test_end2end.py
index 388e52c3856eaa231991644cebf6b30cb9fe0a4b..4c44655306c39d2085a5a252610cd422be353c32 100644 (file)
@@ -18,6 +18,7 @@ import shutil
 import subprocess
 import time
 import unittest
+import test_utils
 
 
 class TransportPCEFulltesting(unittest.TestCase):
@@ -28,74 +29,33 @@ class TransportPCEFulltesting(unittest.TestCase):
     honeynode_process3 = None
     honeynode_process4 = None
     restconf_baseurl = "http://localhost:8181/restconf"
+    WAITING = 20      #nominal value is 300
 
 #START_IGNORE_XTESTING
 
     @classmethod
-    def __start_honeynode1(cls):
-        executable = ("./honeynode/2.1/honeynode-distribution/target/honeynode-distribution-1.18.01-hc"
-                      "/honeynode-distribution-1.18.01/honeycomb-tpce")
-        if os.path.isfile(executable):
-            with open('honeynode1.log', 'w') as outfile:
-                cls.honeynode_process1 = subprocess.Popen(
-                    [executable, "17840", "sample_configs/openroadm/2.1/oper-ROADMA-full.xml"],
-                    stdout=outfile)
-
-    @classmethod
-    def __start_honeynode2(cls):
-        executable = ("./honeynode/2.1/honeynode-distribution/target/honeynode-distribution-1.18.01-hc"
-                      "/honeynode-distribution-1.18.01/honeycomb-tpce")
-        if os.path.isfile(executable):
-            with open('honeynode2.log', 'w') as outfile:
-                cls.honeynode_process2 = subprocess.Popen(
-                    [executable, "17831", "sample_configs/openroadm/2.1/oper-XPDRA.xml"],
-                    stdout=outfile)
+    def setUpClass(cls):
+        print ("starting honeynode1...")
+        cls.honeynode_process1 = test_utils.start_xpdra_honeynode()
+        time.sleep(20)
 
-    @classmethod
-    def __start_honeynode3(cls):
-        executable = ("./honeynode/2.1/honeynode-distribution/target/honeynode-distribution-1.18.01-hc"
-                      "/honeynode-distribution-1.18.01/honeycomb-tpce")
-        if os.path.isfile(executable):
-            with open('honeynode3.log', 'w') as outfile:
-                cls.honeynode_process3 = subprocess.Popen(
-                    [executable, "17843", "sample_configs/openroadm/2.1/oper-ROADMC-full.xml"],
-                    stdout=outfile)
+        print ("starting honeynode2...")
+        cls.honeynode_process2 = test_utils.start_roadma_full_honeynode()
+        time.sleep(20)
 
-    @classmethod
-    def __start_honeynode4(cls):
-        executable = ("./honeynode/2.1/honeynode-distribution/target/honeynode-distribution-1.18.01-hc"
-                      "/honeynode-distribution-1.18.01/honeycomb-tpce")
-        if os.path.isfile(executable):
-            with open('honeynode4.log', 'w') as outfile:
-                cls.honeynode_process4 = subprocess.Popen(
-                    [executable, "17834", "sample_configs/openroadm/2.1/oper-XPDRC.xml"],
-                    stdout=outfile)
+        print ("starting honeynode3...")
+        cls.honeynode_process3 = test_utils.start_roadmc_full_honeynode()
+        time.sleep(20)
 
-    @classmethod
-    def __start_odl(cls):
-        executable = "../karaf/target/assembly/bin/karaf"
-        with open('odl.log', 'w') as outfile:
-            cls.odl_process = subprocess.Popen(
-                ["bash", executable, "server"], stdout=outfile,
-                stdin=open(os.devnull))
+        print ("starting honeynode4...")
+        cls.honeynode_process4 = test_utils.start_xpdrc_honeynode()
+        time.sleep(20)
+        print ("all honeynodes started")
 
-    @classmethod
-    def setUpClass(cls):
-        print ("starting honeynode1")
-        cls.__start_honeynode1()
-        time.sleep(40)
-        print ("starting honeynode2")
-        cls.__start_honeynode2()
-        time.sleep(40)
-        print ("starting honeynode3")
-        cls.__start_honeynode3()
-        time.sleep(40)
-        print ("starting honeynode4")
-        cls.__start_honeynode4()
-        time.sleep(40)
-        print ("starting opendaylight")
-        cls.__start_odl()
+        print ("starting opendaylight...")
+        cls.odl_process = test_utils.start_tpce()
         time.sleep(80)
+        print ("opendaylight started")
 
     @classmethod
     def tearDownClass(cls):
@@ -134,14 +94,14 @@ class TransportPCEFulltesting(unittest.TestCase):
 #  connect netconf devices
     def test_01_connect_xpdrA(self):
         url = ("{}/config/network-topology:"
-               "network-topology/topology/topology-netconf/node/XPDRA"
+               "network-topology/topology/topology-netconf/node/XPDRA01"
               .format(self.restconf_baseurl))
         data = {"node": [{
-            "node-id": "XPDRA",
+            "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": "17831",
+            "netconf-node-topology:port": "17830",
             "netconf-node-topology:tcp-only": "false",
             "netconf-node-topology:pass-through": {}}]}
         headers = {'content-type': 'application/json'}
@@ -153,10 +113,10 @@ class TransportPCEFulltesting(unittest.TestCase):
 
     def test_02_connect_xpdrC(self):
         url = ("{}/config/network-topology:"
-               "network-topology/topology/topology-netconf/node/XPDRC"
+               "network-topology/topology/topology-netconf/node/XPDRC01"
               .format(self.restconf_baseurl))
         data = {"node": [{
-            "node-id": "XPDRC",
+            "node-id": "XPDRC01",
             "netconf-node-topology:username": "admin",
             "netconf-node-topology:password": "admin",
             "netconf-node-topology:host": "127.0.0.1",
@@ -172,14 +132,14 @@ class TransportPCEFulltesting(unittest.TestCase):
 
     def test_03_connect_rdmA(self):
         url = ("{}/config/network-topology:"
-               "network-topology/topology/topology-netconf/node/ROADMA"
+               "network-topology/topology/topology-netconf/node/ROADMA01"
                .format(self.restconf_baseurl))
         data = {"node": [{
-             "node-id": "ROADMA",
+             "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": "17840",
+             "netconf-node-topology:port": "17821",
              "netconf-node-topology:tcp-only": "false",
              "netconf-node-topology:pass-through": {}}]}
         headers = {'content-type': 'application/json'}
@@ -191,14 +151,14 @@ class TransportPCEFulltesting(unittest.TestCase):
 
     def test_04_connect_rdmC(self):
         url = ("{}/config/network-topology:"
-               "network-topology/topology/topology-netconf/node/ROADMC"
+               "network-topology/topology/topology-netconf/node/ROADMC01"
                .format(self.restconf_baseurl))
         data = {"node": [{
-             "node-id": "ROADMC",
+             "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": "17843",
+             "netconf-node-topology:port": "17823",
              "netconf-node-topology:tcp-only": "false",
              "netconf-node-topology:pass-through": {}}]}
         headers = {'content-type': 'application/json'}
@@ -213,10 +173,10 @@ class TransportPCEFulltesting(unittest.TestCase):
         data = {
             "networkutils:input": {
                 "networkutils:links-input": {
-                    "networkutils:xpdr-node": "XPDRA",
+                    "networkutils:xpdr-node": "XPDRA01",
                     "networkutils:xpdr-num": "1",
                     "networkutils:network-num": "1",
-                    "networkutils:rdm-node": "ROADMA",
+                    "networkutils:rdm-node": "ROADMA01",
                     "networkutils:srg-num": "1",
                     "networkutils:termination-point-num": "SRG1-PP1-TXRX"
                 }
@@ -231,38 +191,15 @@ class TransportPCEFulltesting(unittest.TestCase):
         self.assertIn('Xponder Roadm Link created successfully', res["output"]["result"])
         time.sleep(2)
 
-    def test_06_connect_xprdA_N2_to_roadmA_PP2(self):
-        url = "{}/operations/transportpce-networkutils:init-xpdr-rdm-links".format(self.restconf_baseurl)
-        data = {
-            "networkutils:input": {
-                "networkutils:links-input": {
-                    "networkutils:xpdr-node": "XPDRA",
-                    "networkutils:xpdr-num": "1",
-                    "networkutils:network-num": "2",
-                    "networkutils:rdm-node": "ROADMA",
-                    "networkutils:srg-num": "1",
-                    "networkutils:termination-point-num": "SRG1-PP2-TXRX"
-                }
-            }
-        }
-        headers = {'content-type': '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('Xponder Roadm Link created successfully', res["output"]["result"])
-        time.sleep(2)
-
-    def test_07_connect_roadmA_PP1_to_xpdrA_N1(self):
+    def test_06_connect_roadmA_PP1_to_xpdrA_N1(self):
         url = "{}/operations/transportpce-networkutils:init-rdm-xpdr-links".format(self.restconf_baseurl)
         data = {
             "networkutils:input": {
                 "networkutils:links-input": {
-                    "networkutils:xpdr-node": "XPDRA",
+                    "networkutils:xpdr-node": "XPDRA01",
                     "networkutils:xpdr-num": "1",
                     "networkutils:network-num": "1",
-                    "networkutils:rdm-node": "ROADMA",
+                    "networkutils:rdm-node": "ROADMA01",
                     "networkutils:srg-num": "1",
                     "networkutils:termination-point-num": "SRG1-PP1-TXRX"
                 }
@@ -277,38 +214,15 @@ class TransportPCEFulltesting(unittest.TestCase):
         self.assertIn('Roadm Xponder links created successfully', res["output"]["result"])
         time.sleep(2)
 
-    def test_08_connect_roadmA_PP2_to_xpdrA_N2(self):
-        url = "{}/operations/transportpce-networkutils:init-rdm-xpdr-links".format(self.restconf_baseurl)
-        data = {
-            "networkutils:input": {
-                "networkutils:links-input": {
-                    "networkutils:xpdr-node": "XPDRA",
-                    "networkutils:xpdr-num": "1",
-                    "networkutils:network-num": "2",
-                    "networkutils:rdm-node": "ROADMA",
-                    "networkutils:srg-num": "1",
-                    "networkutils:termination-point-num": "SRG1-PP2-TXRX"
-                }
-            }
-        }
-        headers = {'content-type': '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('Roadm Xponder links created successfully', res["output"]["result"])
-        time.sleep(2)
-
-    def test_09_connect_xprdC_N1_to_roadmC_PP1(self):
+    def test_07_connect_xprdC_N1_to_roadmC_PP1(self):
         url = "{}/operations/transportpce-networkutils:init-xpdr-rdm-links".format(self.restconf_baseurl)
         data = {
             "networkutils:input": {
                 "networkutils:links-input": {
-                    "networkutils:xpdr-node": "XPDRC",
+                    "networkutils:xpdr-node": "XPDRC01",
                     "networkutils:xpdr-num": "1",
                     "networkutils:network-num": "1",
-                    "networkutils:rdm-node": "ROADMC",
+                    "networkutils:rdm-node": "ROADMC01",
                     "networkutils:srg-num": "1",
                     "networkutils:termination-point-num": "SRG1-PP1-TXRX"
                 }
@@ -323,38 +237,15 @@ class TransportPCEFulltesting(unittest.TestCase):
         self.assertIn('Xponder Roadm Link created successfully', res["output"]["result"])
         time.sleep(2)
 
-    def test_10_connect_xprdC_N2_to_roadmC_PP2(self):
-        url = "{}/operations/transportpce-networkutils:init-xpdr-rdm-links".format(self.restconf_baseurl)
-        data = {
-            "networkutils:input": {
-                "networkutils:links-input": {
-                    "networkutils:xpdr-node": "XPDRC",
-                    "networkutils:xpdr-num": "1",
-                    "networkutils:network-num": "2",
-                    "networkutils:rdm-node": "ROADMC",
-                    "networkutils:srg-num": "1",
-                    "networkutils:termination-point-num": "SRG1-PP2-TXRX"
-                }
-            }
-        }
-        headers = {'content-type': '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('Xponder Roadm Link created successfully', res["output"]["result"])
-        time.sleep(2)
-
-    def test_11_connect_roadmC_PP1_to_xpdrC_N1(self):
+    def test_08_connect_roadmC_PP1_to_xpdrC_N1(self):
         url = "{}/operations/transportpce-networkutils:init-rdm-xpdr-links".format(self.restconf_baseurl)
         data = {
             "networkutils:input": {
                 "networkutils:links-input": {
-                    "networkutils:xpdr-node": "XPDRC",
+                    "networkutils:xpdr-node": "XPDRC01",
                     "networkutils:xpdr-num": "1",
                     "networkutils:network-num": "1",
-                    "networkutils:rdm-node": "ROADMC",
+                    "networkutils:rdm-node": "ROADMC01",
                     "networkutils:srg-num": "1",
                     "networkutils:termination-point-num": "SRG1-PP1-TXRX"
                 }
@@ -369,31 +260,54 @@ class TransportPCEFulltesting(unittest.TestCase):
         self.assertIn('Roadm Xponder links created successfully', res["output"]["result"])
         time.sleep(2)
 
-    def test_12_connect_roadmC_PP2_to_xpdrC_N2(self):
-        url = "{}/operations/transportpce-networkutils:init-rdm-xpdr-links".format(self.restconf_baseurl)
-        data = {
-            "networkutils:input": {
-                "networkutils:links-input": {
-                    "networkutils:xpdr-node": "XPDRC",
-                    "networkutils:xpdr-num": "1",
-                    "networkutils:network-num": "2",
-                    "networkutils:rdm-node": "ROADMC",
-                    "networkutils:srg-num": "1",
-                    "networkutils:termination-point-num": "SRG1-PP2-TXRX"
-                }
-            }
-        }
+    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))
+        data = {"span": {
+            "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(
-             "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"])
-        time.sleep(2)
+            "PUT", url, data=json.dumps(data), headers=headers,
+            auth=('admin', 'admin'))
+        self.assertEqual(response.status_code, requests.codes.created)
+
+    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))
+        data = {"span": {
+            "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
-    def test_13_create_eth_service1(self):
+    def test_11_create_eth_service1(self):
         url = ("{}/operations/org-openroadm-service:service-create"
               .format(self.restconf_baseurl))
         data = {"input": {
@@ -408,7 +322,7 @@ class TransportPCEFulltesting(unittest.TestCase):
                 "connection-type": "service",
                 "service-a-end": {
                     "service-rate": "100",
-                    "node-id": "XPDRA",
+                    "node-id": "XPDRA01",
                     "service-format": "Ethernet",
                     "clli": "SNJSCAMCJP8",
                     "tx-direction": {
@@ -445,7 +359,7 @@ class TransportPCEFulltesting(unittest.TestCase):
                 },
                 "service-z-end": {
                     "service-rate": "100",
-                    "node-id": "XPDRC",
+                    "node-id": "XPDRC01",
                     "service-format": "Ethernet",
                     "clli": "SNJSCAMCJT4",
                     "tx-direction": {
@@ -493,9 +407,9 @@ class TransportPCEFulltesting(unittest.TestCase):
         res = response.json()
         self.assertIn('PCE calculation in progress',
             res['output']['configuration-response-common']['response-message'])
-        time.sleep(300)
+        time.sleep(self.WAITING)
 
-    def test_14_get_eth_service1(self):
+    def test_12_get_eth_service1(self):
         url = ("{}/operational/org-openroadm-service:service-list/services/service1"
               .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json',
@@ -515,9 +429,9 @@ class TransportPCEFulltesting(unittest.TestCase):
             res['services'][0]['lifecycle-state'], 'planned')
         time.sleep(2)
 
-    def test_15_check_xc1_ROADMA(self):
+    def test_13_check_xc1_ROADMA(self):
         url = ("{}/config/network-topology:network-topology/topology/topology-netconf/"
-               "node/ROADMA/yang-ext:mount/org-openroadm-device:org-openroadm-device/"
+               "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'}
@@ -539,9 +453,9 @@ class TransportPCEFulltesting(unittest.TestCase):
              res['roadm-connections'][0]['destination'])
         time.sleep(5)
 
-    def test_16_check_xc1_ROADMC(self):
+    def test_14_check_xc1_ROADMC(self):
         url = ("{}/config/network-topology:network-topology/topology/topology-netconf/"
-               "node/ROADMC/yang-ext:mount/org-openroadm-device:org-openroadm-device/"
+               "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'}
@@ -563,8 +477,8 @@ class TransportPCEFulltesting(unittest.TestCase):
              res['roadm-connections'][0]['destination'])
         time.sleep(5)
 
-    def test_17_check_topo_XPDRA(self):
-        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/XPDRA-XPDR1"
+    def test_15_check_topo_XPDRA(self):
+        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/XPDRA01-XPDR1"
                .format(self.restconf_baseurl))
         response = requests.request(
              "GET", url1, auth=('admin', 'admin'))
@@ -572,49 +486,145 @@ class TransportPCEFulltesting(unittest.TestCase):
         res = response.json()
         liste_tp = res['node'][0]['ietf-network-topology:termination-point']
         for ele in liste_tp:
-            if ele['tp-id'] == 'XPDR1-CLIENT1':
-                self.assertEqual({u'index': 1}, ele['org-openroadm-network-topology:xpdr-client-attributes']['wavelength'])
             if ele['tp-id'] == 'XPDR1-NETWORK1':
-                self.assertEqual({u'index': 1}, ele['org-openroadm-network-topology:xpdr-network-attributes']['wavelength'])
-            if ele['tp-id'] == 'XPDR1-CLIENT2':
+                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('wavelength', dict.keys(ele['org-openroadm-network-topology:xpdr-client-attributes']))
             if ele['tp-id'] == 'XPDR1-NETWORK2':
                 self.assertNotIn('wavelength', dict.keys(ele['org-openroadm-network-topology:xpdr-network-attributes']))
         time.sleep(3)
 
-    def test_18_check_topo_ROADMA_SRG1(self):
-        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/ROADMA-SRG1"
+    def test_16_check_topo_ROADMA_SRG1(self):
+        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/ROADMA01-SRG1"
                .format(self.restconf_baseurl))
         response = requests.request(
              "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': 1},
+                          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}, ele['org-openroadm-network-topology:pp-attributes']['used-wavelength'])
+                self.assertIn({u'index': 1, u'frequency': 196.1, u'width': 40},
+                               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_19_check_topo_ROADMA_DEG1(self):
-        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/ROADMA-DEG1"
+    def test_17_check_topo_ROADMA_DEG1(self):
+        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/ROADMA01-DEG1"
                .format(self.restconf_baseurl))
         response = requests.request(
              "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': 1},
+                          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}, ele['org-openroadm-network-topology:ctp-attributes']['used-wavelengths'])
+                self.assertIn({u'index': 1, u'frequency': 196.1, u'width': 40},
+                               ele['org-openroadm-network-topology:ctp-attributes']['used-wavelengths'])
             if ele['tp-id'] == 'DEG1-TTP-TXRX':
-                self.assertIn({u'index': 1}, ele['org-openroadm-network-topology:tx-ttp-attributes']['used-wavelengths'])
+                self.assertIn({u'index': 1, u'frequency': 196.1, u'width': 40},
+                               ele['org-openroadm-network-topology:tx-ttp-attributes']['used-wavelengths'])
         time.sleep(3)
 
-    def test_20_create_eth_service2(self):
+    def test_18_connect_xprdA_N2_to_roadmA_PP2(self):
+        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": "2",
+                    "networkutils:rdm-node": "ROADMA01",
+                    "networkutils:srg-num": "1",
+                    "networkutils:termination-point-num": "SRG1-PP2-TXRX"
+                }
+            }
+        }
+        headers = {'content-type': '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('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)
+        data = {
+            "networkutils:input": {
+                "networkutils:links-input": {
+                    "networkutils:xpdr-node": "XPDRA01",
+                    "networkutils:xpdr-num": "1",
+                    "networkutils:network-num": "2",
+                    "networkutils:rdm-node": "ROADMA01",
+                    "networkutils:srg-num": "1",
+                    "networkutils:termination-point-num": "SRG1-PP2-TXRX"
+                }
+            }
+        }
+        headers = {'content-type': '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('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)
+        data = {
+            "networkutils:input": {
+                "networkutils:links-input": {
+                    "networkutils:xpdr-node": "XPDRC01",
+                    "networkutils:xpdr-num": "1",
+                    "networkutils:network-num": "2",
+                    "networkutils:rdm-node": "ROADMC01",
+                    "networkutils:srg-num": "1",
+                    "networkutils:termination-point-num": "SRG1-PP2-TXRX"
+                }
+            }
+        }
+        headers = {'content-type': '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('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)
+        data = {
+            "networkutils:input": {
+                "networkutils:links-input": {
+                    "networkutils:xpdr-node": "XPDRC01",
+                    "networkutils:xpdr-num": "1",
+                    "networkutils:network-num": "2",
+                    "networkutils:rdm-node": "ROADMC01",
+                    "networkutils:srg-num": "1",
+                    "networkutils:termination-point-num": "SRG1-PP2-TXRX"
+                }
+            }
+        }
+        headers = {'content-type': '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('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": {
@@ -629,7 +639,7 @@ class TransportPCEFulltesting(unittest.TestCase):
                 "connection-type": "service",
                 "service-a-end": {
                     "service-rate": "100",
-                    "node-id": "XPDRA",
+                    "node-id": "XPDRA01",
                     "service-format": "Ethernet",
                     "clli": "SNJSCAMCJP8",
                     "tx-direction": {
@@ -666,7 +676,7 @@ class TransportPCEFulltesting(unittest.TestCase):
                 },
                 "service-z-end": {
                     "service-rate": "100",
-                    "node-id": "XPDRC",
+                    "node-id": "XPDRC01",
                     "service-format": "Ethernet",
                     "clli": "SNJSCAMCJT4",
                     "tx-direction": {
@@ -714,9 +724,9 @@ class TransportPCEFulltesting(unittest.TestCase):
         res = response.json()
         self.assertIn('PCE calculation in progress',
             res['output']['configuration-response-common']['response-message'])
-        time.sleep(300)
+        time.sleep(self.WAITING)
 
-    def test_21_get_eth_service2(self):
+    def test_23_get_eth_service2(self):
         url = ("{}/operational/org-openroadm-service:service-list/services/service2"
               .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json',
@@ -736,9 +746,9 @@ class TransportPCEFulltesting(unittest.TestCase):
             res['services'][0]['lifecycle-state'], 'planned')
         time.sleep(1)
 
-    def test_22_check_xc2_ROADMA(self):
+    def test_24_check_xc2_ROADMA(self):
         url = ("{}/config/network-topology:network-topology/topology/topology-netconf/"
-               "node/ROADMA/yang-ext:mount/org-openroadm-device:org-openroadm-device/"
+               "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'}
@@ -758,8 +768,8 @@ class TransportPCEFulltesting(unittest.TestCase):
              {'dst-if': 'SRG1-PP2-TXRX-2'},
              res['roadm-connections'][0]['destination'])
 
-    def test_23_check_topo_XPDRA(self):
-        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/XPDRA-XPDR1"
+    def test_25_check_topo_XPDRA(self):
+        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/XPDRA01-XPDR1"
                .format(self.restconf_baseurl))
         response = requests.request(
              "GET", url1, auth=('admin', 'admin'))
@@ -767,18 +777,18 @@ class TransportPCEFulltesting(unittest.TestCase):
         res = response.json()
         liste_tp = res['node'][0]['ietf-network-topology:termination-point']
         for ele in liste_tp:
-            if ele['tp-id'] == 'XPDR1-CLIENT1':
-                self.assertEqual({u'index': 1}, ele['org-openroadm-network-topology:xpdr-client-attributes']['wavelength'])
             if ele['tp-id'] == 'XPDR1-NETWORK1':
-                self.assertEqual({u'index': 1}, ele['org-openroadm-network-topology:xpdr-network-attributes']['wavelength'])
-            if ele['tp-id'] == 'XPDR1-CLIENT2':
-                self.assertEqual({u'index': 2}, ele['org-openroadm-network-topology:xpdr-client-attributes']['wavelength'])
+                self.assertEqual({u'frequency': 196.1, u'width': 40},
+                                  ele['org-openroadm-network-topology:xpdr-network-attributes']['wavelength'])
             if ele['tp-id'] == 'XPDR1-NETWORK2':
-                self.assertEqual({u'index': 2}, ele['org-openroadm-network-topology:xpdr-network-attributes']['wavelength'])
+                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('wavelength', dict.keys(ele['org-openroadm-network-topology:xpdr-client-attributes']))
         time.sleep(10)
 
-    def test_24_check_topo_ROADMA_SRG1(self):
-        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/ROADMA-SRG1"
+    def test_26_check_topo_ROADMA_SRG1(self):
+        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/ROADMA01-SRG1"
                .format(self.restconf_baseurl))
         response = requests.request(
              "GET", url1, auth=('admin', 'admin'))
@@ -789,18 +799,21 @@ class TransportPCEFulltesting(unittest.TestCase):
         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}, ele['org-openroadm-network-topology:pp-attributes']['used-wavelength'])
-                self.assertNotIn({u'index': 2}, ele['org-openroadm-network-topology:pp-attributes']['used-wavelength'])
+                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'])
             if ele['tp-id'] == 'SRG1-PP2-TXRX':
-                self.assertIn({u'index': 2}, ele['org-openroadm-network-topology:pp-attributes']['used-wavelength'])
-                self.assertNotIn({u'index': 1}, ele['org-openroadm-network-topology:pp-attributes']['used-wavelength'])
+                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'])
             if ele['tp-id'] == 'SRG1-PP3-TXRX':
                 self.assertNotIn('org-openroadm-network-topology:pp-attributes', dict.keys(ele))
         time.sleep(10)
 
-
-    def test_25_check_topo_ROADMA_DEG1(self):
-        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/ROADMA-DEG1"
+    def test_27_check_topo_ROADMA_DEG1(self):
+        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/ROADMA01-DEG1"
                .format(self.restconf_baseurl))
         response = requests.request(
              "GET", url1, auth=('admin', 'admin'))
@@ -811,15 +824,19 @@ class TransportPCEFulltesting(unittest.TestCase):
         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}, ele['org-openroadm-network-topology:ctp-attributes']['used-wavelengths'])
-                self.assertIn({u'index': 2}, ele['org-openroadm-network-topology:ctp-attributes']['used-wavelengths'])
+                self.assertIn({u'index': 1, u'frequency': 196.1, u'width': 40},
+                               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'])
             if ele['tp-id'] == 'DEG1-TTP-TXRX':
-                self.assertIn({u'index': 1}, ele['org-openroadm-network-topology:tx-ttp-attributes']['used-wavelengths'])
-                self.assertIn({u'index': 2}, ele['org-openroadm-network-topology:tx-ttp-attributes']['used-wavelengths'])
+                self.assertIn({u'index': 1, u'frequency': 196.1, u'width': 40},
+                               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'])
         time.sleep(10)
 
 #     creation service test on a non-available resource
-    def test_26_create_eth_service3(self):
+    def test_28_create_eth_service3(self):
         url = ("{}/operations/org-openroadm-service:service-create"
               .format(self.restconf_baseurl))
         data = {"input": {
@@ -834,7 +851,7 @@ class TransportPCEFulltesting(unittest.TestCase):
                 "connection-type": "service",
                 "service-a-end": {
                     "service-rate": "100",
-                    "node-id": "XPDRA",
+                    "node-id": "XPDRA01",
                     "service-format": "Ethernet",
                     "clli": "SNJSCAMCJP8",
                     "tx-direction": {
@@ -871,7 +888,7 @@ class TransportPCEFulltesting(unittest.TestCase):
                 },
                 "service-z-end": {
                     "service-rate": "100",
-                    "node-id": "XPDRC",
+                    "node-id": "XPDRC01",
                     "service-format": "Ethernet",
                     "clli": "SNJSCAMCJT4",
                     "tx-direction": {
@@ -917,14 +934,14 @@ class TransportPCEFulltesting(unittest.TestCase):
             auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
-        self.assertIn('No path available',
+        self.assertIn('PCE calculation in progress',
             res['output']['configuration-response-common']['response-message'])
-        self.assertIn('500', res['output']['configuration-response-common']['response-code'])
-        time.sleep(300)
+        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
 
-    def test_27_delete_eth_service3(self):
+    def test_29_delete_eth_service3(self):
         url = ("{}/operations/org-openroadm-service:service-delete"
               .format(self.restconf_baseurl))
         data = {"input": {
@@ -951,7 +968,7 @@ class TransportPCEFulltesting(unittest.TestCase):
         self.assertIn('500', res['output']['configuration-response-common']['response-code'])
         time.sleep(20)
 
-    def test_28_delete_eth_service1(self):
+    def test_30_delete_eth_service1(self):
         url = ("{}/operations/org-openroadm-service:service-delete"
               .format(self.restconf_baseurl))
         data = {"input": {
@@ -977,7 +994,7 @@ class TransportPCEFulltesting(unittest.TestCase):
             res['output']['configuration-response-common']['response-message'])
         time.sleep(20)
 
-    def test_29_delete_eth_service2(self):
+    def test_31_delete_eth_service2(self):
         url = ("{}/operations/org-openroadm-service:service-delete"
               .format(self.restconf_baseurl))
         data = {"input": {
@@ -1003,9 +1020,9 @@ class TransportPCEFulltesting(unittest.TestCase):
             res['output']['configuration-response-common']['response-message'])
         time.sleep(20)
 
-    def test_30_check_no_xc_ROADMA(self):
+    def test_32_check_no_xc_ROADMA(self):
         url = ("{}/config/network-topology:network-topology/topology/topology-netconf/"
-               "node/ROADMA/yang-ext:mount/org-openroadm-device:org-openroadm-device/"
+               "node/ROADMA01/yang-ext:mount/org-openroadm-device:org-openroadm-device/"
                .format(self.restconf_baseurl))
         response = requests.request(
              "GET", url, auth=('admin', 'admin'))
@@ -1014,8 +1031,8 @@ class TransportPCEFulltesting(unittest.TestCase):
         self.assertNotIn('roadm-connections', dict.keys(res['org-openroadm-device']))
         time.sleep(2)
 
-    def test_31_check_topo_XPDRA(self):
-        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/XPDRA-XPDR1"
+    def test_33_check_topo_XPDRA(self):
+        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/XPDRA01-XPDR1"
                .format(self.restconf_baseurl))
         response = requests.request(
              "GET", url1, auth=('admin', 'admin'))
@@ -1023,14 +1040,16 @@ class TransportPCEFulltesting(unittest.TestCase):
         res = response.json()
         liste_tp = res['node'][0]['ietf-network-topology:termination-point']
         for ele in liste_tp:
-            if ele[u'org-openroadm-network-topology:tp-type'] == 'XPONDER-CLIENT':
+            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('wavelength', dict.keys(ele['org-openroadm-network-topology:xpdr-client-attributes']))
-            elif ele[u'org-openroadm-network-topology:tp-type'] == 'XPONDER-NETWORK':
+            elif ((ele[u'org-openroadm-common-network:tp-type'] == 'XPONDER-NETWORK')
+                and (ele['tp-id'] == 'XPDR1-CLIENT1' or ele['tp-id'] == 'XPDR1-CLIENT3')):
                 self.assertNotIn('wavelength', dict.keys(ele['org-openroadm-network-topology:xpdr-network-attributes']))
         time.sleep(10)
 
-    def test_32_check_topo_ROADMA_SRG1(self):
-        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/ROADMA-SRG1"
+    def test_34_check_topo_ROADMA_SRG1(self):
+        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/ROADMA01-SRG1"
                .format(self.restconf_baseurl))
         response = requests.request(
              "GET", url1, auth=('admin', 'admin'))
@@ -1040,16 +1059,14 @@ class TransportPCEFulltesting(unittest.TestCase):
         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':
-                self.assertEqual({}, ele['org-openroadm-network-topology:pp-attributes'])
-            elif ele['tp-id'] == 'SRG1-PP2-TXRX':
-                self.assertEqual({}, ele['org-openroadm-network-topology:pp-attributes'])
+            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))
         time.sleep(10)
 
-    def test_33_check_topo_ROADMA_DEG1(self):
-        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/ROADMA-DEG1"
+    def test_35_check_topo_ROADMA_DEG1(self):
+        url1 = ("{}/config/ietf-network:networks/network/openroadm-topology/node/ROADMA01-DEG1"
                .format(self.restconf_baseurl))
         response = requests.request(
              "GET", url1, auth=('admin', 'admin'))
@@ -1060,14 +1077,14 @@ class TransportPCEFulltesting(unittest.TestCase):
         liste_tp = res['node'][0]['ietf-network-topology:termination-point']
         for ele in liste_tp:
             if ele['tp-id'] == 'DEG1-CTP-TXRX':
-                self.assertEqual({}, ele['org-openroadm-network-topology:ctp-attributes'])
+                self.assertNotIn('org-openroadm-network-topology:ctp-attributes', dict.keys(ele))
             if ele['tp-id'] == 'DEG1-TTP-TXRX':
-                self.assertEqual({}, ele['org-openroadm-network-topology:tx-ttp-attributes'])
+                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
-    def test_34_create_oc_service1(self):
+    def test_36_create_oc_service1(self):
         url = ("{}/operations/org-openroadm-service:service-create"
               .format(self.restconf_baseurl))
         data = {"input": {
@@ -1082,7 +1099,7 @@ class TransportPCEFulltesting(unittest.TestCase):
                 "connection-type": "roadm-line",
                 "service-a-end": {
                     "service-rate": "100",
-                    "node-id": "ROADMA",
+                    "node-id": "ROADMA01",
                     "service-format": "OC",
                     "clli": "SNJSCAMCJP8",
                     "tx-direction": {
@@ -1119,7 +1136,7 @@ class TransportPCEFulltesting(unittest.TestCase):
                 },
                 "service-z-end": {
                     "service-rate": "100",
-                    "node-id": "ROADMC",
+                    "node-id": "ROADMC01",
                     "service-format": "OC",
                     "clli": "SNJSCAMCJT4",
                     "tx-direction": {
@@ -1167,9 +1184,9 @@ class TransportPCEFulltesting(unittest.TestCase):
         res = response.json()
         self.assertIn('PCE calculation in progress',
             res['output']['configuration-response-common']['response-message'])
-        time.sleep(300)
+        time.sleep(self.WAITING)
 
-    def test_35_get_oc_service1(self):
+    def test_37_get_oc_service1(self):
         url = ("{}/operational/org-openroadm-service:service-list/services/service1"
               .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json',
@@ -1189,9 +1206,9 @@ class TransportPCEFulltesting(unittest.TestCase):
             res['services'][0]['lifecycle-state'], 'planned')
         time.sleep(1)
 
-    def test_36_check_xc1_ROADMA(self):
+    def test_38_check_xc1_ROADMA(self):
         url = ("{}/config/network-topology:network-topology/topology/topology-netconf/"
-               "node/ROADMA/yang-ext:mount/org-openroadm-device:org-openroadm-device/"
+               "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'}
@@ -1213,9 +1230,9 @@ class TransportPCEFulltesting(unittest.TestCase):
              res['roadm-connections'][0]['destination'])
         time.sleep(7)
 
-    def test_37_check_xc1_ROADMC(self):
+    def test_39_check_xc1_ROADMC(self):
         url = ("{}/config/network-topology:network-topology/topology/topology-netconf/"
-               "node/ROADMC/yang-ext:mount/org-openroadm-device:org-openroadm-device/"
+               "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'}
@@ -1237,7 +1254,7 @@ class TransportPCEFulltesting(unittest.TestCase):
              res['roadm-connections'][0]['destination'])
         time.sleep(7)
 
-    def test_38_create_oc_service2(self):
+    def test_40_create_oc_service2(self):
         url = ("{}/operations/org-openroadm-service:service-create"
               .format(self.restconf_baseurl))
         data = {"input": {
@@ -1252,7 +1269,7 @@ class TransportPCEFulltesting(unittest.TestCase):
                 "connection-type": "roadm-line",
                 "service-a-end": {
                     "service-rate": "100",
-                    "node-id": "ROADMA",
+                    "node-id": "ROADMA01",
                     "service-format": "OC",
                     "clli": "SNJSCAMCJP8",
                     "tx-direction": {
@@ -1289,7 +1306,7 @@ class TransportPCEFulltesting(unittest.TestCase):
                 },
                 "service-z-end": {
                     "service-rate": "100",
-                    "node-id": "ROADMC",
+                    "node-id": "ROADMC01",
                     "service-format": "OC",
                     "clli": "SNJSCAMCJT4",
                     "tx-direction": {
@@ -1337,9 +1354,9 @@ class TransportPCEFulltesting(unittest.TestCase):
         res = response.json()
         self.assertIn('PCE calculation in progress',
             res['output']['configuration-response-common']['response-message'])
-        time.sleep(300)
+        time.sleep(self.WAITING)
 
-    def test_39_get_oc_service2(self):
+    def test_41_get_oc_service2(self):
         url = ("{}/operational/org-openroadm-service:service-list/services/service2"
               .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json',
@@ -1359,9 +1376,9 @@ class TransportPCEFulltesting(unittest.TestCase):
             res['services'][0]['lifecycle-state'], 'planned')
         time.sleep(2)
 
-    def test_40_check_xc2_ROADMA(self):
+    def test_42_check_xc2_ROADMA(self):
         url = ("{}/config/network-topology:network-topology/topology/topology-netconf/"
-               "node/ROADMA/yang-ext:mount/org-openroadm-device:org-openroadm-device/"
+               "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'}
@@ -1383,13 +1400,12 @@ class TransportPCEFulltesting(unittest.TestCase):
              res['roadm-connections'][0]['destination'])
         time.sleep(2)
 
-    def test_41_check_topo_ROADMA(self):
-        self.test_24_check_topo_ROADMA_SRG1()
-        self.test_25_check_topo_ROADMA_DEG1()
+    def test_43_check_topo_ROADMA(self):
+        self.test_26_check_topo_ROADMA_SRG1()
+        self.test_27_check_topo_ROADMA_DEG1()
         time.sleep(3)
 
-
-    def test_42_delete_oc_service1(self):
+    def test_44_delete_oc_service1(self):
         url = ("{}/operations/org-openroadm-service:service-delete"
               .format(self.restconf_baseurl))
         data = {"input": {
@@ -1415,7 +1431,7 @@ class TransportPCEFulltesting(unittest.TestCase):
             res['output']['configuration-response-common']['response-message'])
         time.sleep(20)
 
-    def test_43_delete_oc_service2(self):
+    def test_45_delete_oc_service2(self):
         url = ("{}/operations/org-openroadm-service:service-delete"
               .format(self.restconf_baseurl))
         data = {"input": {
@@ -1441,7 +1457,7 @@ class TransportPCEFulltesting(unittest.TestCase):
             res['output']['configuration-response-common']['response-message'])
         time.sleep(20)
 
-    def test_44_get_no_oc_services(self):
+    def test_46_get_no_oc_services(self):
         print ("start test")
         url = ("{}/operational/org-openroadm-service:service-list"
               .format(self.restconf_baseurl))
@@ -1449,14 +1465,17 @@ class TransportPCEFulltesting(unittest.TestCase):
         "Accept": "application/json"}
         response = requests.request(
             "GET", url, headers=headers, auth=('admin', 'admin'))
-        self.assertEqual(response.status_code, requests.codes.ok)
+        self.assertEqual(response.status_code, requests.codes.not_found)
         res = response.json()
-        self.assertEqual({u'service-list': {}}, res)
+        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"},
+            res['errors']['error'])
         time.sleep(1)
 
-    def test_45_get_no_xc_ROADMA(self):
+    def test_47_get_no_xc_ROADMA(self):
         url = ("{}/config/network-topology:network-topology/topology/topology-netconf"
-               "/node/ROADMA/yang-ext:mount/org-openroadm-device:org-openroadm-device/"
+               "/node/ROADMA01/yang-ext:mount/org-openroadm-device:org-openroadm-device/"
               .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json',
         "Accept": "application/json"}
@@ -1467,23 +1486,23 @@ class TransportPCEFulltesting(unittest.TestCase):
         self.assertNotIn(['roadm-connections'][0], res['org-openroadm-device'])
         time.sleep(1)
 
-    def test_46_check_topo_ROADMA(self):
-        self.test_32_check_topo_ROADMA_SRG1()
-        self.test_33_check_topo_ROADMA_DEG1()
+    def test_48_check_topo_ROADMA(self):
+        self.test_34_check_topo_ROADMA_SRG1()
+        self.test_35_check_topo_ROADMA_DEG1()
 
-    def test_47_loop_create_eth_service(self):
+    def test_49_loop_create_eth_service(self):
         for i in range(1,6):
             print ("trial number {}".format(i))
             print("eth service creation")
-            self.test_13_create_eth_service1()
-            print ("check xc in ROADMA")
-            self.test_15_check_xc1_ROADMA()
-            print ("check xc in ROADMC")
-            self.test_16_check_xc1_ROADMC()
+            self.test_11_create_eth_service1()
+            print ("check xc in ROADMA01")
+            self.test_13_check_xc1_ROADMA()
+            print ("check xc in ROADMC01")
+            self.test_14_check_xc1_ROADMC()
             print ("eth service deletion\n")
-            self.test_28_delete_eth_service1()
+            self.test_30_delete_eth_service1()
 
-    def test_48_loop_create_oc_service(self):
+    def test_50_loop_create_oc_service(self):
         url = ("{}/operational/org-openroadm-service:service-list/services/service1"
                .format(self.restconf_baseurl))
         response = requests.request("GET", url, auth=('admin', 'admin'))
@@ -1510,18 +1529,17 @@ class TransportPCEFulltesting(unittest.TestCase):
         for i in range(1,6):
             print ("trial number {}".format(i))
             print("oc service creation")
-            self.test_34_create_oc_service1()
-            print ("check xc in ROADMA")
-            self.test_36_check_xc1_ROADMA()
-            print ("check xc in ROADMC")
-            self.test_37_check_xc1_ROADMC()
+            self.test_36_create_oc_service1()
+            print ("check xc in ROADMA01")
+            self.test_38_check_xc1_ROADMA()
+            print ("check xc in ROADMC01")
+            self.test_39_check_xc1_ROADMC()
             print ("oc service deletion\n")
-            self.test_42_delete_oc_service1()
-
+            self.test_44_delete_oc_service1()
 
-    def test_49_disconnect_XPDRA(self):
+    def test_51_disconnect_XPDRA(self):
         url = ("{}/config/network-topology:"
-                "network-topology/topology/topology-netconf/node/XPDRA"
+                "network-topology/topology/topology-netconf/node/XPDRA01"
                .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json'}
         response = requests.request(
@@ -1530,9 +1548,9 @@ class TransportPCEFulltesting(unittest.TestCase):
         self.assertEqual(response.status_code, requests.codes.ok)
         time.sleep(10)
 
-    def test_50_disconnect_XPDRC(self):
+    def test_52_disconnect_XPDRC(self):
         url = ("{}/config/network-topology:"
-                "network-topology/topology/topology-netconf/node/XPDRC"
+                "network-topology/topology/topology-netconf/node/XPDRC01"
                .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json'}
         response = requests.request(
@@ -1541,9 +1559,9 @@ class TransportPCEFulltesting(unittest.TestCase):
         self.assertEqual(response.status_code, requests.codes.ok)
         time.sleep(10)
 
-    def test_51_disconnect_ROADMA(self):
+    def test_53_disconnect_ROADMA(self):
         url = ("{}/config/network-topology:"
-                "network-topology/topology/topology-netconf/node/ROADMA"
+                "network-topology/topology/topology-netconf/node/ROADMA01"
                .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json'}
         response = requests.request(
@@ -1552,9 +1570,9 @@ class TransportPCEFulltesting(unittest.TestCase):
         self.assertEqual(response.status_code, requests.codes.ok)
         time.sleep(10)
 
-    def test_52_disconnect_ROADMC(self):
+    def test_54_disconnect_ROADMC(self):
         url = ("{}/config/network-topology:"
-                "network-topology/topology/topology-netconf/node/ROADMC"
+                "network-topology/topology/topology-netconf/node/ROADMC01"
                .format(self.restconf_baseurl))
         headers = {'content-type': 'application/json'}
         response = requests.request(