# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
+# pylint: disable=invalid-name
# pylint: disable=no-member
# pylint: disable=too-many-public-methods
+# pylint: disable=too-many-lines
import base64
import unittest
import time
import requests
+# pylint: disable=wrong-import-order
import sys
sys.path.append('transportpce_tests/common/')
+# pylint: disable=wrong-import-position
+# pylint: disable=import-error
import test_utils # nopep8
"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",
"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",
"lgx-port-name": "Some lgx-port-name",
"lgx-port-rack": "000000.00",
"lgx-port-shelf": "00"
- }
- },
+ },
+ "index": 0
+ }],
"optic-type": "gray"
},
"service-z-end": {
"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",
"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",
"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",
print("all processes killed")
def setUp(self):
- time.sleep(5)
+ time.sleep(2)
def test_01_connect_xpdra2(self):
response = test_utils.mount_device("XPDR-A2", ('xpdra2', self.NODE_VERSION_71))
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)
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',
"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'
}
- input_dict_2 = {'tx-sapi': 'LY9PxYJqUbw=',
- 'expected-dapi': 'LY9PxYJqUbw=',
+ input_dict_2 = {'tx-sapi': 'G54UFNImtOE=',
+ 'expected-dapi': 'G54UFNImtOE=',
+ 'tx-dapi': 'J/FIUzQc+4M=',
+ 'expected-sapi': 'J/FIUzQc+4M=',
'rate': 'org-openroadm-otn-common-types:OTUCn',
'degthr-percentage': 100,
'degm-intervals': 2,
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)
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',
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'
}
- input_dict_2 = {'tx-dapi': 'LY9PxYJqUbw=',
- 'expected-sapi': 'LY9PxYJqUbw=',
- 'tx-sapi': 'Nmbu2MNHvc4=',
- 'expected-dapi': 'Nmbu2MNHvc4=',
+ input_dict_2 = {'tx-dapi': 'G54UFNImtOE=',
+ 'expected-sapi': 'G54UFNImtOE=',
+ 'tx-sapi': 'J/FIUzQc+4M=',
+ 'expected-dapi': 'J/FIUzQc+4M=',
'rate': 'org-openroadm-otn-common-types:OTUCn',
'degthr-percentage': 100,
'degm-intervals': 2,
response = test_utils.get_otn_topo_request()
res = response.json()
for node in res['network'][0]['node']:
- if node['node-id'] == 'XPDR-A2-XPDR2' or 'XPDR-C2-XPDR2':
+ if node['node-id'] in ('XPDR-A2-XPDR2', 'XPDR-C2-XPDR2'):
tpList = node['ietf-network-topology:termination-point']
for tp in tpList:
if tp['tp-id'] == 'XPDR2-NETWORK1':
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()
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',
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 = {
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',
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',
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 = {
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',
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):
response = test_utils.get_otn_topo_request()
res = response.json()
for node in res['network'][0]['node']:
- if node['node-id'] == 'XPDR-A2-XPDR2' or 'XPDR-C2-XPDR2':
+ if node['node-id'] in ('XPDR-A2-XPDR2', 'XPDR-C2-XPDR2'):
tpList = node['ietf-network-topology:termination-point']
for tp in tpList:
if tp['tp-id'] == 'XPDR2-NETWORK1':
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()
response = test_utils.get_otn_topo_request()
res = response.json()
for node in res['network'][0]['node']:
- if node['node-id'] == 'XPDR-A2-XPDR2' or 'XPDR-C2-XPDR2':
+ if node['node-id'] in ('XPDR-A2-XPDR2', 'XPDR-C2-XPDR2'):
tpList = node['ietf-network-topology:termination-point']
for tp in tpList:
if tp['tp-id'] == 'XPDR2-NETWORK1':
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):
response = test_utils.get_otn_topo_request()
res = response.json()
for node in res['network'][0]['node']:
- if (node['node-id'] == 'XPDR-A2-XPDR2' or 'XPDR-C2-XPDR2'):
+ if node['node-id'] in ('XPDR-A2-XPDR2', 'XPDR-C2-XPDR2'):
tpList = node['ietf-network-topology:termination-point']
for tp in tpList:
if tp['tp-id'] == 'XPDR2-NETWORK1':
response = test_utils.get_otn_topo_request()
res = response.json()
for node in res['network'][0]['node']:
- if node['node-id'] == 'XPDR-A2-XPDR2' or 'XPDR-C2-XPDR2':
+ if node['node-id'] in ('XPDR-A2-XPDR2', 'XPDR-C2-XPDR2'):
tpList = node['ietf-network-topology:termination-point']
for tp in tpList:
if tp['tp-id'] == 'XPDR2-NETWORK1':
"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):
links = res['network'][0]['ietf-network-topology:link']
self.assertEqual(22, len(links), 'Topology should contain 22 links')
- def test_68_connect_xprda2_2_N1_to_roadma_PP2(self):
+ def test_68_connect_xprda2_1_N1_to_roadma_PP2(self):
response = test_utils.connect_xpdr_to_rdm_request("XPDR-A2", "1", "1",
"ROADM-A1", "1", "SRG1-PP1-TXRX")
self.assertEqual(response.status_code, requests.codes.ok)
res["output"]["result"])
time.sleep(2)
- def test_69_connect_roadma_PP2_to_xpdra2_2_N1(self):
+ def test_69_connect_roadma_PP2_to_xpdra2_1_N1(self):
response = test_utils.connect_rdm_to_xpdr_request("XPDR-A2", "1", "1",
"ROADM-A1", "1", "SRG1-PP1-TXRX")
self.assertEqual(response.status_code, requests.codes.ok)
res["output"]["result"])
time.sleep(2)
- def test_70_connect_xprdc2_2_N1_to_roadmc_PP2(self):
+ def test_70_connect_xprdc2_1_N1_to_roadmc_PP2(self):
response = test_utils.connect_xpdr_to_rdm_request("XPDR-C2", "1", "1",
"ROADM-C1", "1", "SRG1-PP1-TXRX")
self.assertEqual(response.status_code, requests.codes.ok)
res["output"]["result"])
time.sleep(2)
- def test_71_connect_roadmc_PP2_to_xpdrc2_2_N1(self):
+ def test_71_connect_roadmc_PP2_to_xpdrc2_1_N1(self):
response = test_utils.connect_rdm_to_xpdr_request("XPDR-C2", "1", "1",
"ROADM-C1", "1", "SRG1-PP1-TXRX")
self.assertEqual(response.status_code, requests.codes.ok)
res["output"]["result"])
time.sleep(2)
+
# 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"]["port"]["port-name"] = "XPDR1-CLIENT1"
- self.cr_serv_sample_data["input"]["service-a-end"]["rx-direction"]["port"]["port-name"] = "XPDR1-CLIENT1"
+ 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"
- self.cr_serv_sample_data["input"]["service-z-end"]["tx-direction"]["port"]["port-name"] = "XPDR1-CLIENT1"
- self.cr_serv_sample_data["input"]["service-z-end"]["rx-direction"]["port"]["port-name"] = "XPDR1-CLIENT1"
+ 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()
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)
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',
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": "AIGiVAQ4gDil", "rate": "org-openroadm-otn-common-types:OTUCn",
+ input_dict_2 = {"tx-sapi": "ANeUjNzWtDLV",
+ "expected-dapi": "ANeUjNzWtDLV",
+ 'tx-dapi': 'AKsqPmWceByv',
+ 'expected-sapi': 'AKsqPmWceByv',
+ "rate": "org-openroadm-otn-common-types:OTUCn",
"degthr-percentage": 100,
"tim-detect-mode": "Disabled",
"otucn-n-rate": 4,
- "degm-intervals": 2,
- "expected-dapi": "AIGiVAQ4gDil"}
+ "degm-intervals": 2}
self.assertDictEqual(dict(input_dict_1, **res['interface'][0]),
res['interface'][0])
input_dict_1 = {'name': 'XPDR1-NETWORK1-ODUC4',
'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-OTUC4',
'type': 'org-openroadm-interfaces:otnOdu',
- 'supporting-port': 'L1'}
+ 'supporting-port': 'L1',
+ 'circuit-id': 'TBD',
+ 'description': 'TBD'}
input_dict_2 = {"odu-function": "org-openroadm-otn-common-types:ODU-TTP",
"tim-detect-mode": "Disabled",
"degm-intervals": 2,
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.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")
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):
res = response.json()
links = res['network'][0]['ietf-network-topology:link']
for link in links:
- if (link["org-openroadm-common-network:link-type"] == "XPONDER-OUTPUT" or
- link["org-openroadm-common-network:link-type"] == "XPONDER-INPUT"):
+ if link["org-openroadm-common-network:link-type"] in ('XPONDER-OUTPUT', 'XPONDER-INPUT'):
link_name = link["link-id"]
response = test_utils.delete_request(url+link_name)
self.assertEqual(response.status_code, requests.codes.ok)