X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=tests%2Ftransportpce_tests%2Fhybrid%2Ftest02_B100G_end2end.py;h=51dc2e60ba2bc940f6d203f8c191461ee3afc16d;hb=c9bab520323eb66d759c3a7b2f90daa61d021f6b;hp=aa49014e03a459d7edf7a4e5b4e373968eeb76df;hpb=e50901c4b06c82b91f136dac09bacce01258d7b2;p=transportpce.git diff --git a/tests/transportpce_tests/hybrid/test02_B100G_end2end.py b/tests/transportpce_tests/hybrid/test02_B100G_end2end.py index aa49014e0..51dc2e60b 100644 --- a/tests/transportpce_tests/hybrid/test02_B100G_end2end.py +++ b/tests/transportpce_tests/hybrid/test02_B100G_end2end.py @@ -48,13 +48,7 @@ class TransportPCEtesting(unittest.TestCase): "service-format": "OTU", "otu-service-rate": "org-openroadm-otn-common-types:OTUCn", "clli": "NodeSA", - "subrate-eth-sla": { - "subrate-eth-sla": { - "committed-info-rate": "100000", - "committed-burst-size": "64" - } - }, - "tx-direction": { + "tx-direction": [{ "port": { "port-device-name": "XPDR-A2-XPDR2", "port-type": "fixed", @@ -67,9 +61,10 @@ class TransportPCEtesting(unittest.TestCase): "lgx-port-name": "Some lgx-port-name", "lgx-port-rack": "000000.00", "lgx-port-shelf": "00" - } - }, - "rx-direction": { + }, + "index": 0 + }], + "rx-direction": [{ "port": { "port-device-name": "XPDR-A2-XPDR2", "port-type": "fixed", @@ -82,8 +77,9 @@ class TransportPCEtesting(unittest.TestCase): "lgx-port-name": "Some lgx-port-name", "lgx-port-rack": "000000.00", "lgx-port-shelf": "00" - } - }, + }, + "index": 0 + }], "optic-type": "gray" }, "service-z-end": { @@ -92,13 +88,7 @@ class TransportPCEtesting(unittest.TestCase): "service-format": "OTU", "otu-service-rate": "org-openroadm-otn-common-types:OTUCn", "clli": "NodeSC", - "subrate-eth-sla": { - "subrate-eth-sla": { - "committed-info-rate": "100000", - "committed-burst-size": "64" - } - }, - "tx-direction": { + "tx-direction": [{ "port": { "port-device-name": "XPDR-C2-XPDR2", "port-type": "fixed", @@ -111,9 +101,10 @@ class TransportPCEtesting(unittest.TestCase): "lgx-port-name": "Some lgx-port-name", "lgx-port-rack": "000000.00", "lgx-port-shelf": "00" - } - }, - "rx-direction": { + }, + "index": 0 + }], + "rx-direction": [{ "port": { "port-device-name": "XPDR-C2-XPDR2", "port-type": "fixed", @@ -126,8 +117,9 @@ class TransportPCEtesting(unittest.TestCase): "lgx-port-name": "Some lgx-port-name", "lgx-port-rack": "000000.00", "lgx-port-shelf": "00" - } - }, + }, + "index": 0 + }], "optic-type": "gray" }, "due-date": "2018-06-15T00:00:01Z", @@ -283,7 +275,7 @@ class TransportPCEtesting(unittest.TestCase): time.sleep(2) # Check correct configuration of devices - def test_14_check_interface_och_xpdra2(self): + def test_14_check_interface_otsi_xpdra2(self): response = test_utils.check_netconf_node_request( "XPDR-A2", "interface/XPDR2-NETWORK1-755:768") self.assertEqual(response.status_code, requests.codes.ok) @@ -304,10 +296,10 @@ class TransportPCEtesting(unittest.TestCase): def test_15_check_interface_OTSI_GROUP_xpdra2(self): response = test_utils.check_netconf_node_request( - "XPDR-A2", "interface/XPDR2-NETWORK1-OTSI-GROUP") + "XPDR-A2", "interface/XPDR2-NETWORK1-OTSIGROUP-400G") self.assertEqual(response.status_code, requests.codes.ok) res = response.json() - input_dict_1 = {'name': 'XPDR2-NETWORK1-OTUC4', + input_dict_1 = {'name': 'XPDR2-NETWORK1-OTSIGROUP-400G', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/2/2-PLUG-NET', 'supporting-interface-list': 'XPDR2-NETWORK1-755:768', @@ -329,10 +321,10 @@ class TransportPCEtesting(unittest.TestCase): "XPDR-A2", "interface/XPDR2-NETWORK1-OTUC4") self.assertEqual(response.status_code, requests.codes.ok) res = response.json() - input_dict_1 = {'name': 'XPDR2-NETWORK1-OTSI-GROUP', + input_dict_1 = {'name': 'XPDR2-NETWORK1-OTUC4', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/2/2-PLUG-NET', - 'supporting-interface-list': 'XPDR2-NETWORK1-OTSI-GROUP', + 'supporting-interface-list': 'XPDR2-NETWORK1-OTSIGROUP-400G', 'type': 'org-openroadm-interfaces:otnOtu', 'supporting-port': 'L1' } @@ -351,7 +343,7 @@ class TransportPCEtesting(unittest.TestCase): res['interface'][0] ['org-openroadm-otn-otu-interfaces:otu']) - def test_17_check_interface_och_xpdrc2(self): + def test_17_check_interface_otsi_xpdrc2(self): response = test_utils.check_netconf_node_request( "XPDR-C2", "interface/XPDR2-NETWORK1-755:768") self.assertEqual(response.status_code, requests.codes.ok) @@ -372,10 +364,10 @@ class TransportPCEtesting(unittest.TestCase): def test_18_check_interface_OTSI_GROUP_xpdrc2(self): response = test_utils.check_netconf_node_request( - "XPDR-C2", "interface/XPDR2-NETWORK1-OTSI-GROUP") + "XPDR-C2", "interface/XPDR2-NETWORK1-OTSIGROUP-400G") self.assertEqual(response.status_code, requests.codes.ok) res = response.json() - input_dict_1 = {'name': 'XPDR2-NETWORK1-OTSI-GROUP', + input_dict_1 = {'name': 'XPDR2-NETWORK1-OTSIGROUP-400G', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/2/2-PLUG-NET', 'supporting-interface-list': 'XPDR2-NETWORK1-755:768', @@ -400,7 +392,7 @@ class TransportPCEtesting(unittest.TestCase): input_dict_1 = {'name': 'XPDR1-NETWORK1-OTUC4', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/2/2-PLUG-NET', - 'supporting-interface-list': 'XPDR2-NETWORK1-OTSI-GROUP', + 'supporting-interface-list': 'XPDR2-NETWORK1-OTSIGROUP-400G', 'type': 'org-openroadm-interfaces:otnOtu', 'supporting-port': 'L1' } @@ -609,13 +601,13 @@ class TransportPCEtesting(unittest.TestCase): self.cr_serv_sample_data["input"]["service-a-end"]["service-rate"] = "100" self.cr_serv_sample_data["input"]["service-a-end"]["service-format"] = "Ethernet" del self.cr_serv_sample_data["input"]["service-a-end"]["odu-service-rate"] - self.cr_serv_sample_data["input"]["service-a-end"]["tx-direction"]["port"]["port-name"] = "XPDR2-CLIENT1" - self.cr_serv_sample_data["input"]["service-a-end"]["rx-direction"]["port"]["port-name"] = "XPDR2-CLIENT1" + self.cr_serv_sample_data["input"]["service-a-end"]["tx-direction"][0]["port"]["port-name"] = "XPDR2-CLIENT1" + self.cr_serv_sample_data["input"]["service-a-end"]["rx-direction"][0]["port"]["port-name"] = "XPDR2-CLIENT1" self.cr_serv_sample_data["input"]["service-z-end"]["service-rate"] = "100" self.cr_serv_sample_data["input"]["service-z-end"]["service-format"] = "Ethernet" del self.cr_serv_sample_data["input"]["service-z-end"]["odu-service-rate"] - self.cr_serv_sample_data["input"]["service-z-end"]["tx-direction"]["port"]["port-name"] = "XPDR2-CLIENT1" - self.cr_serv_sample_data["input"]["service-z-end"]["rx-direction"]["port"]["port-name"] = "XPDR2-CLIENT1" + self.cr_serv_sample_data["input"]["service-z-end"]["tx-direction"][0]["port"]["port-name"] = "XPDR2-CLIENT1" + self.cr_serv_sample_data["input"]["service-z-end"]["rx-direction"][0]["port"]["port-name"] = "XPDR2-CLIENT1" response = test_utils.service_create_request(self.cr_serv_sample_data) self.assertEqual(response.status_code, requests.codes.ok) res = response.json() @@ -640,10 +632,10 @@ class TransportPCEtesting(unittest.TestCase): def test_31_check_interface_100GE_CLIENT_xpdra2(self): response = test_utils.check_netconf_node_request( - "XPDR-A2", "interface/XPDR2-CLIENT1-ETHERNET100G") + "XPDR-A2", "interface/XPDR2-CLIENT1-ETHERNET-100G") self.assertEqual(response.status_code, requests.codes.ok) res = response.json() - input_dict_1 = {'name': 'XPDR2-CLIENT1-ETHERNET100G', + input_dict_1 = {'name': 'XPDR2-CLIENT1-ETHERNET-100G', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/2/1/1-PLUG-CLIENT', 'type': 'org-openroadm-interfaces:ethernetCsmacd', @@ -657,13 +649,13 @@ class TransportPCEtesting(unittest.TestCase): def test_32_check_interface_ODU4_CLIENT_xpdra2(self): response = test_utils.check_netconf_node_request( - "XPDR-A2", "interface/XPDR2-CLIENT1-ODU4-service-100GE") + "XPDR-A2", "interface/XPDR2-CLIENT1-ODU4") self.assertEqual(response.status_code, requests.codes.ok) res = response.json() - input_dict_1 = {'name': 'XPDR2-CLIENT1-ODU4-service-100GE', + input_dict_1 = {'name': 'XPDR2-CLIENT1-ODU4', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/2/1/1-PLUG-CLIENT', - 'supporting-interface-list': 'XPDR2-CLIENT1-ETHERNET100G', + 'supporting-interface-list': 'XPDR2-CLIENT1-ETHERNET-100G', 'type': 'org-openroadm-interfaces:otnOdu', 'supporting-port': 'C1'} input_dict_2 = { @@ -682,10 +674,10 @@ class TransportPCEtesting(unittest.TestCase): def test_33_check_interface_ODU4_NETWORK_xpdra2(self): response = test_utils.check_netconf_node_request( - "XPDR-A2", "interface/XPDR2-NETWORK1-ODU4-service-100GE") + "XPDR-A2", "interface/XPDR2-NETWORK1-ODU4") self.assertEqual(response.status_code, requests.codes.ok) res = response.json() - input_dict_1 = {'name': 'XPDR2-NETWORK1-ODU4-service-100GE', + input_dict_1 = {'name': 'XPDR2-NETWORK1-ODU4', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/2/2-PLUG-NET', 'supporting-interface-list': 'XPDR2-NETWORK1-ODUC4', @@ -714,28 +706,28 @@ class TransportPCEtesting(unittest.TestCase): def test_34_check_ODU4_connection_xpdra2(self): response = test_utils.check_netconf_node_request( "XPDR-A2", - "odu-connection/XPDR2-CLIENT1-ODU4-service-100GE-x-XPDR2-NETWORK1-ODU4-service-100GE") + "odu-connection/XPDR2-CLIENT1-ODU4-x-XPDR2-NETWORK1-ODU4") self.assertEqual(response.status_code, requests.codes.ok) res = response.json() input_dict_1 = { 'connection-name': - 'XPDR2-CLIENT1-ODU4-service-100GE-x-XPDR2-NETWORK1-ODU4-service-100GE', + 'XPDR2-CLIENT1-ODU4-x-XPDR2-NETWORK1-ODU4', 'direction': 'bidirectional' } self.assertDictEqual(dict(input_dict_1, **res['odu-connection'][0]), res['odu-connection'][0]) - self.assertDictEqual({'dst-if': 'XPDR2-NETWORK1-ODU4-service-100GE'}, + self.assertDictEqual({'dst-if': 'XPDR2-NETWORK1-ODU4'}, res['odu-connection'][0]['destination']) - self.assertDictEqual({'src-if': 'XPDR2-CLIENT1-ODU4-service-100GE'}, + self.assertDictEqual({'src-if': 'XPDR2-CLIENT1-ODU4'}, res['odu-connection'][0]['source']) def test_35_check_interface_100GE_CLIENT_xpdrc2(self): response = test_utils.check_netconf_node_request( - "XPDR-C2", "interface/XPDR2-CLIENT1-ETHERNET100G") + "XPDR-C2", "interface/XPDR2-CLIENT1-ETHERNET-100G") self.assertEqual(response.status_code, requests.codes.ok) res = response.json() - input_dict_1 = {'name': 'XPDR2-CLIENT1-ETHERNET100G', + input_dict_1 = {'name': 'XPDR2-CLIENT1-ETHERNET-100G', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/2/1/1-PLUG-CLIENT', 'type': 'org-openroadm-interfaces:ethernetCsmacd', @@ -749,13 +741,13 @@ class TransportPCEtesting(unittest.TestCase): def test_36_check_interface_ODU4_CLIENT_xpdrc2(self): response = test_utils.check_netconf_node_request( - "XPDR-C2", "interface/XPDR2-CLIENT1-ODU4-service-100GE") + "XPDR-C2", "interface/XPDR2-CLIENT1-ODU4") self.assertEqual(response.status_code, requests.codes.ok) res = response.json() - input_dict_1 = {'name': 'XPDR2-CLIENT1-ODU4-service-100GE', + input_dict_1 = {'name': 'XPDR2-CLIENT1-ODU4', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/2/1/1-PLUG-CLIENT', - 'supporting-interface-list': 'XPDR2-CLIENT1-ETHERNET100G', + 'supporting-interface-list': 'XPDR2-CLIENT1-ETHERNET-100G', 'type': 'org-openroadm-interfaces:otnOdu', 'supporting-port': 'C1'} input_dict_2 = { @@ -774,10 +766,10 @@ class TransportPCEtesting(unittest.TestCase): def test_37_check_interface_ODU4_NETWORK_xpdrc2(self): response = test_utils.check_netconf_node_request( - "XPDR-C2", "interface/XPDR2-NETWORK1-ODU4-service-100GE") + "XPDR-C2", "interface/XPDR2-NETWORK1-ODU4") self.assertEqual(response.status_code, requests.codes.ok) res = response.json() - input_dict_1 = {'name': 'XPDR2-NETWORK1-ODU4-service-100GE', + input_dict_1 = {'name': 'XPDR2-NETWORK1-ODU4', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/2/2-PLUG-NET', 'supporting-interface-list': 'XPDR2-NETWORK1-ODUC4', @@ -812,20 +804,20 @@ class TransportPCEtesting(unittest.TestCase): def test_38_check_ODU4_connection_xpdrc2(self): response = test_utils.check_netconf_node_request( "XPDR-C2", - "odu-connection/XPDR2-CLIENT1-ODU4-service-100GE-x-XPDR2-NETWORK1-ODU4-service-100GE") + "odu-connection/XPDR2-CLIENT1-ODU4-x-XPDR2-NETWORK1-ODU4") self.assertEqual(response.status_code, requests.codes.ok) res = response.json() input_dict_1 = { 'connection-name': - 'XPDR2-CLIENT1-ODU4-service-100GE-x-XPDR2-NETWORK1-ODU4-service-100GE', + 'XPDR2-CLIENT1-ODU4-x-XPDR2-NETWORK1-ODU4', 'direction': 'bidirectional' } self.assertDictEqual(dict(input_dict_1, **res['odu-connection'][0]), res['odu-connection'][0]) - self.assertDictEqual({'dst-if': 'XPDR2-NETWORK1-ODU4-service-100GE'}, + self.assertDictEqual({'dst-if': 'XPDR2-NETWORK1-ODU4'}, res['odu-connection'][0]['destination']) - self.assertDictEqual({'src-if': 'XPDR2-CLIENT1-ODU4-service-100GE'}, + self.assertDictEqual({'src-if': 'XPDR2-CLIENT1-ODU4'}, res['odu-connection'][0]['source']) def test_39_check_otn_topo_links(self): @@ -867,12 +859,12 @@ class TransportPCEtesting(unittest.TestCase): self.cr_serv_sample_data["input"]["connection-type"] = "service" self.cr_serv_sample_data["input"]["service-a-end"]["service-rate"] = "100" self.cr_serv_sample_data["input"]["service-a-end"]["service-format"] = "Ethernet" - self.cr_serv_sample_data["input"]["service-a-end"]["tx-direction"]["port"]["port-name"] = "XPDR2-CLIENT2" - self.cr_serv_sample_data["input"]["service-a-end"]["rx-direction"]["port"]["port-name"] = "XPDR2-CLIENT2" + self.cr_serv_sample_data["input"]["service-a-end"]["tx-direction"][0]["port"]["port-name"] = "XPDR2-CLIENT2" + self.cr_serv_sample_data["input"]["service-a-end"]["rx-direction"][0]["port"]["port-name"] = "XPDR2-CLIENT2" self.cr_serv_sample_data["input"]["service-z-end"]["service-rate"] = "100" self.cr_serv_sample_data["input"]["service-z-end"]["service-format"] = "Ethernet" - self.cr_serv_sample_data["input"]["service-z-end"]["tx-direction"]["port"]["port-name"] = "XPDR2-CLIENT2" - self.cr_serv_sample_data["input"]["service-z-end"]["rx-direction"]["port"]["port-name"] = "XPDR2-CLIENT2" + self.cr_serv_sample_data["input"]["service-z-end"]["tx-direction"][0]["port"]["port-name"] = "XPDR2-CLIENT2" + self.cr_serv_sample_data["input"]["service-z-end"]["rx-direction"][0]["port"]["port-name"] = "XPDR2-CLIENT2" response = test_utils.service_create_request(self.cr_serv_sample_data) self.assertEqual(response.status_code, requests.codes.ok) res = response.json() @@ -967,17 +959,17 @@ class TransportPCEtesting(unittest.TestCase): def test_50_check_no_interface_ODU4_NETWORK_xpdra2(self): response = test_utils.check_netconf_node_request( - "XPDR-A2", "interface/XPDR2-NETWORK1-ODU4-service-100GE") + "XPDR-A2", "interface/XPDR2-NETWORK1-ODU4") self.assertEqual(response.status_code, requests.codes.conflict) def test_51_check_no_interface_ODU4_CLIENT_xpdra2(self): response = test_utils.check_netconf_node_request( - "XPDR-A2", "interface/XPDR2-CLIENT1-ODU4-service-100GE") + "XPDR-A2", "interface/XPDR2-CLIENT1-ODU4") self.assertEqual(response.status_code, requests.codes.conflict) def test_52_check_no_interface_100GE_CLIENT_xpdra2(self): response = test_utils.check_netconf_node_request( - "XPDR-A2", "interface/XPDR2-CLIENT1-ETHERNET100G") + "XPDR-A2", "interface/XPDR2-CLIENT1-ETHERNET-100G") self.assertEqual(response.status_code, requests.codes.conflict) def test_53_check_otn_topo_links(self): @@ -1065,14 +1057,14 @@ class TransportPCEtesting(unittest.TestCase): "XPDR-A2", "interface/XPDR2-NETWORK1-OTUC4") self.assertEqual(response.status_code, requests.codes.conflict) - def test_63_check_no_interface_OCH_xpdra2(self): + def test_63_check_no_interface_OTSI_xpdra2(self): response = test_utils.check_netconf_node_request( "XPDR-A2", "interface/XPDR2-NETWORK1-755:768") self.assertEqual(response.status_code, requests.codes.conflict) - def test_64_check_no_interface_OTSI_xpdra2(self): + def test_64_check_no_interface_OTSIG_xpdra2(self): response = test_utils.check_netconf_node_request( - "XPDR-A2", "interface/XPDR2-NETWORK1-OTSI-GROUP") + "XPDR-A2", "interface/XPDR2-NETWORK1-OTSIGROUP-400G") self.assertEqual(response.status_code, requests.codes.conflict) def test_65_getLinks_OtnTopology(self): @@ -1137,10 +1129,21 @@ class TransportPCEtesting(unittest.TestCase): # test service-create for 400GE service from xpdra2 to xpdrc2 + def test_72_create_400GE_service(self): self.cr_serv_sample_data["input"]["service-name"] = "service-400GE" self.cr_serv_sample_data["input"]["service-a-end"]["service-rate"] = "400" + self.cr_serv_sample_data["input"]["service-a-end"]["tx-direction"][0]["port"]["port-name"] = "XPDR1-CLIENT1" + self.cr_serv_sample_data["input"]["service-a-end"]["rx-direction"][0]["port"]["port-name"] = "XPDR1-CLIENT1" self.cr_serv_sample_data["input"]["service-z-end"]["service-rate"] = "400" + del self.cr_serv_sample_data["input"]["service-a-end"]["tx-direction"][0]["port"]["port-name"] + del self.cr_serv_sample_data["input"]["service-a-end"]["tx-direction"][0]["port"]["port-device-name"] + del self.cr_serv_sample_data["input"]["service-a-end"]["rx-direction"][0]["port"]["port-name"] + del self.cr_serv_sample_data["input"]["service-a-end"]["rx-direction"][0]["port"]["port-device-name"] + del self.cr_serv_sample_data["input"]["service-z-end"]["tx-direction"][0]["port"]["port-name"] + del self.cr_serv_sample_data["input"]["service-z-end"]["tx-direction"][0]["port"]["port-device-name"] + del self.cr_serv_sample_data["input"]["service-z-end"]["rx-direction"][0]["port"]["port-name"] + del self.cr_serv_sample_data["input"]["service-z-end"]["rx-direction"][0]["port"]["port-device-name"] response = test_utils.service_create_request(self.cr_serv_sample_data) self.assertEqual(response.status_code, requests.codes.ok) res = response.json() @@ -1240,7 +1243,7 @@ class TransportPCEtesting(unittest.TestCase): self.assertEqual(freq_map_array[95], 0, "Index 1 should not be available") time.sleep(3) - def test_78_check_interface_100GE_CLIENT_xpdra2(self): + def test_78_check_interface_400GE_CLIENT_xpdra2(self): response = test_utils.check_netconf_node_request( "XPDR-A2", "interface/XPDR1-CLIENT1-ETHERNET") self.assertEqual(response.status_code, requests.codes.ok) @@ -1285,10 +1288,10 @@ class TransportPCEtesting(unittest.TestCase): def test_80_check_interface_OTSI_GROUP_xpdra2(self): response = test_utils.check_netconf_node_request( - "XPDR-A2", "interface/XPDR1-NETWORK1-OTSI-GROUP") + "XPDR-A2", "interface/XPDR1-NETWORK1-OTSIGROUP-400G") self.assertEqual(response.status_code, requests.codes.ok) res = response.json() - input_dict_1 = {'name': 'XPDR1-CLIENT1-ODU2e-service1-10GE', + input_dict_1 = {'name': 'XPDR1-NETWORK1-OTSIGROUP-400G', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/1/2-PLUG-NET', ['supporting-interface-list'][0]: 'XPDR1-NETWORK1-755:768', @@ -1311,7 +1314,7 @@ class TransportPCEtesting(unittest.TestCase): input_dict_1 = {'name': 'XPDR1-NETWORK1-OTUC4', 'administrative-state': 'inService', 'supporting-circuit-pack-name': '1/1/2-PLUG-NET', - ['supporting-interface-list'][0]: 'XPDR1-NETWORK1-OTSI-GROUP', + ['supporting-interface-list'][0]: 'XPDR1-NETWORK1-OTSIGROUP-400G', 'type': 'org-openroadm-interfaces:otnOtu', 'supporting-port': 'L1'} input_dict_2 = {"tx-sapi": "ANeUjNzWtDLV", @@ -1362,6 +1365,60 @@ class TransportPCEtesting(unittest.TestCase): res['interface'][0]['org-openroadm-otn-odu-interfaces:odu']['opu']) self.assertEqual('XPDR1-NETWORK1-OTUC4', res['interface'][0]['supporting-interface-list'][0]) + def test_82a_check_interface_ODUFLEX_xpdra2(self): + response = test_utils.check_netconf_node_request( + "XPDR-A2", "interface/XPDR1-NETWORK1-ODUFLEX") + self.assertEqual(response.status_code, requests.codes.ok) + res = response.json() + input_dict_1 = {'name': 'XPDR1-NETWORK1-ODUFLEX', + 'administrative-state': 'inService', + 'supporting-circuit-pack-name': '1/1/2-PLUG-NET', + ['supporting-interface-list'][0]: 'XPDR1-NETWORK1-ODUC4', + 'type': 'org-openroadm-interfaces:otnOdu', + 'supporting-port': 'L1', + 'circuit-id': 'TBD', + 'description': 'TBD'} + input_dict_2 = {"odu-function": "org-openroadm-otn-common-types:ODU-TTP-CTP", + "tim-detect-mode": "Disabled", + "degm-intervals": 2, + "degthr-percentage": 100, + "monitoring-mode": "terminated", + "rate": "org-openroadm-otn-common-types:ODUflex-cbr", + "oduflex-cbr-service": "org-openroadm-otn-common-types:ODUflex-cbr-400G" + } + input_dict_3 = {"exp-payload-type": "32", "payload-type": "32"} + input_dict_4 = {'trib-port-number': 1} + + self.assertDictEqual(dict(input_dict_1, **res['interface'][0]), + res['interface'][0]) + self.assertDictEqual(dict(input_dict_2, + **res['interface'][0]['org-openroadm-otn-odu-interfaces:odu']), + res['interface'][0]['org-openroadm-otn-odu-interfaces:odu']) + self.assertDictEqual(dict(input_dict_3, + **res['interface'][0]['org-openroadm-otn-odu-interfaces:odu']['opu']), + res['interface'][0]['org-openroadm-otn-odu-interfaces:odu']['opu']) + self.assertDictEqual(dict(input_dict_4, + **res['interface'][0]['org-openroadm-otn-odu-interfaces:odu'][ + 'parent-odu-allocation']), + res['interface'][0]['org-openroadm-otn-odu-interfaces:odu']['parent-odu-allocation']) + self.assertIn('1.1', res['interface'][0]['org-openroadm-otn-odu-interfaces:odu']['parent-odu-allocation'] + ['opucn-trib-slots']) + self.assertIn('1.20', res['interface'][0]['org-openroadm-otn-odu-interfaces:odu']['parent-odu-allocation'] + ['opucn-trib-slots']) + self.assertIn('2.1', res['interface'][0]['org-openroadm-otn-odu-interfaces:odu']['parent-odu-allocation'] + ['opucn-trib-slots']) + self.assertIn('2.20', res['interface'][0]['org-openroadm-otn-odu-interfaces:odu']['parent-odu-allocation'] + ['opucn-trib-slots']) + self.assertIn('3.1', res['interface'][0]['org-openroadm-otn-odu-interfaces:odu']['parent-odu-allocation'] + ['opucn-trib-slots']) + self.assertIn('3.20', res['interface'][0]['org-openroadm-otn-odu-interfaces:odu']['parent-odu-allocation'] + ['opucn-trib-slots']) + self.assertIn('4.1', res['interface'][0]['org-openroadm-otn-odu-interfaces:odu']['parent-odu-allocation'] + ['opucn-trib-slots']) + self.assertIn('4.20', res['interface'][0]['org-openroadm-otn-odu-interfaces:odu']['parent-odu-allocation'] + ['opucn-trib-slots']) + self.assertEqual('XPDR1-NETWORK1-ODUC4', res['interface'][0]['supporting-interface-list'][0]) + def test_83_delete_400GE_service(self): response = test_utils.service_delete_request("service-400GE") self.assertEqual(response.status_code, requests.codes.ok) @@ -1392,7 +1449,7 @@ class TransportPCEtesting(unittest.TestCase): def test_87_check_no_interface_OTSI_GROUP_xpdra2(self): response = test_utils.check_netconf_node_request( - "XPDR-A2", "interface/XPDR1-NETWORK1-OTSI-GROUP") + "XPDR-A2", "interface/XPDR1-NETWORK1-OTSIGROUP-400G") self.assertEqual(response.status_code, requests.codes.conflict) def test_88_check_no_interface_OTSI_xpdra2(self):