import time
import unittest
import requests
-from common import test_utils
+import sys
+sys.path.append('transportpce_tests/common/')
+import test_utils
class TransportPCETopologyTesting(unittest.TestCase):
processes = None
+ NODE_VERSION = '1.2.1'
+ CHECK_DICT1 = {
+ 'ROADMA01-SRG1': {
+ 'node_type': 'SRG',
+ 'checks_tp': [({'tp-id': 'SRG1-CP-TXRX', 'org-openroadm-common-network:administrative-state': 'inService',
+ 'org-openroadm-common-network:tp-type': 'SRG-TXRX-CP',
+ 'org-openroadm-common-network:operational-state': 'inService'}),
+ ({'tp-id': 'SRG1-PP1-TXRX', 'org-openroadm-common-network:administrative-state': 'inService',
+ 'org-openroadm-common-network:tp-type': 'SRG-TXRX-PP',
+ 'org-openroadm-common-network:operational-state': 'inService'})]
+ },
+ 'ROADMA01-SRG3': {
+ 'node_type': 'SRG',
+ 'checks_tp': [({'tp-id': 'SRG3-CP-TXRX', 'org-openroadm-common-network:administrative-state': 'inService',
+ 'org-openroadm-common-network:tp-type': 'SRG-TXRX-CP',
+ 'org-openroadm-common-network:operational-state': 'inService'}),
+ ({'tp-id': 'SRG3-PP1-TXRX', 'org-openroadm-common-network:administrative-state': 'inService',
+ 'org-openroadm-common-network:tp-type': 'SRG-TXRX-PP',
+ 'org-openroadm-common-network:operational-state': 'inService'})]
+ },
+ 'ROADMA01-DEG1': {
+ 'node_type': 'DEGREE',
+ 'checks_tp': [({'tp-id': 'DEG1-TTP-TXRX', 'org-openroadm-common-network:administrative-state': 'inService',
+ 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-TTP',
+ 'org-openroadm-common-network:operational-state': 'inService'}),
+ ({'tp-id': 'DEG1-CTP-TXRX', 'org-openroadm-common-network:administrative-state': 'inService',
+ 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-CTP',
+ 'org-openroadm-common-network:operational-state': 'inService'})]
+ },
+ 'ROADMA01-DEG2': {
+ 'node_type': 'DEGREE',
+ 'checks_tp': [({'tp-id': 'DEG2-TTP-TXRX', 'org-openroadm-common-network:administrative-state': 'inService',
+ 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-TTP',
+ 'org-openroadm-common-network:operational-state': 'inService'}),
+ ({'tp-id': 'DEG2-CTP-TXRX', 'org-openroadm-common-network:administrative-state': 'inService',
+ 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-CTP',
+ 'org-openroadm-common-network:operational-state': 'inService'})]
+ }
+ }
+ CHECK_DICT2 = {
+ 'ROADMC01-SRG1': {
+ 'node_type': 'SRG',
+ 'checks_tp': [({'tp-id': 'SRG1-CP-TXRX', 'org-openroadm-common-network:administrative-state': 'inService',
+ 'org-openroadm-common-network:tp-type': 'SRG-TXRX-CP',
+ 'org-openroadm-common-network:operational-state': 'inService'}),
+ ({'tp-id': 'SRG1-PP1-TXRX', 'org-openroadm-common-network:administrative-state': 'inService',
+ 'org-openroadm-common-network:tp-type': 'SRG-TXRX-PP',
+ 'org-openroadm-common-network:operational-state': 'inService'})]
+ },
+ 'ROADMC01-DEG1': {
+ 'node_type': 'DEGREE',
+ 'checks_tp': [({'tp-id': 'DEG1-TTP-TXRX', 'org-openroadm-common-network:administrative-state': 'inService',
+ 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-TTP',
+ 'org-openroadm-common-network:operational-state': 'inService'}),
+ ({'tp-id': 'DEG1-CTP-TXRX', 'org-openroadm-common-network:administrative-state': 'inService',
+ 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-CTP',
+ 'org-openroadm-common-network:operational-state': 'inService'})]
+ },
+ 'ROADMC01-DEG2': {
+ 'node_type': 'DEGREE',
+ 'checks_tp': [({'tp-id': 'DEG2-TTP-TXRX', 'org-openroadm-common-network:administrative-state': 'inService',
+ 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-TTP',
+ 'org-openroadm-common-network:operational-state': 'inService'}),
+ ({'tp-id': 'DEG2-CTP-TXRX', 'org-openroadm-common-network:administrative-state': 'inService',
+ 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-CTP',
+ 'org-openroadm-common-network:operational-state': 'inService'})]
+ }
+ }
@classmethod
def setUpClass(cls):
cls.processes = test_utils.start_tpce()
- cls.processes = test_utils.start_sims(['xpdra', 'roadma', 'roadmb', 'roadmc'])
+ cls.processes = test_utils.start_sims([('xpdra', cls.NODE_VERSION), ('roadma', cls.NODE_VERSION),
+ ('roadmb', cls.NODE_VERSION), ('roadmc', cls.NODE_VERSION)])
@classmethod
def tearDownClass(cls):
time.sleep(5)
def test_01_connect_ROADMA(self):
- response = test_utils.mount_device("ROADMA01", 'roadma')
+ response = test_utils.mount_device("ROADMA01", ('roadma', self.NODE_VERSION))
self.assertEqual(response.status_code, requests.codes.created, test_utils.CODE_SHOULD_BE_201)
def test_02_getClliNetwork(self):
# Tests related to links
nbLink = len(res['network'][0]['ietf-network-topology:link'])
self.assertEqual(nbLink, 10)
- expressLink = ['ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX',
- 'ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX']
- addLink = ['ROADMA01-SRG1-SRG1-CP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX',
- 'ROADMA01-SRG1-SRG1-CP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX',
- 'ROADMA01-SRG3-SRG3-CP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX',
- 'ROADMA01-SRG3-SRG3-CP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX']
- dropLink = ['ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-SRG1-SRG1-CP-TXRX',
- 'ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-SRG1-SRG1-CP-TXRX',
- 'ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-SRG3-SRG3-CP-TXRX',
- 'ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-SRG3-SRG3-CP-TXRX']
+ check_list = {'EXPRESS-LINK': ['ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX',
+ 'ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX'],
+ 'ADD-LINK': ['ROADMA01-SRG1-SRG1-CP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX',
+ 'ROADMA01-SRG1-SRG1-CP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX',
+ 'ROADMA01-SRG3-SRG3-CP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX',
+ 'ROADMA01-SRG3-SRG3-CP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX'],
+ 'DROP-LINK': ['ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-SRG1-SRG1-CP-TXRX',
+ 'ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-SRG1-SRG1-CP-TXRX',
+ 'ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-SRG3-SRG3-CP-TXRX',
+ 'ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-SRG3-SRG3-CP-TXRX']
+ }
for i in range(0, nbLink):
linkId = res['network'][0]['ietf-network-topology:link'][i]['link-id']
- if (res['network'][0]['ietf-network-topology:link'][i]
- ['org-openroadm-common-network:link-type'] == 'EXPRESS-LINK'):
- find = linkId in expressLink
- self.assertEqual(find, True)
- expressLink.remove(linkId)
- elif (res['network'][0]['ietf-network-topology:link'][i]
- ['org-openroadm-common-network:link-type'] == 'ADD-LINK'):
- find = linkId in addLink
- self.assertEqual(find, True)
- addLink.remove(linkId)
- elif (res['network'][0]['ietf-network-topology:link'][i]
- ['org-openroadm-common-network:link-type'] == 'DROP-LINK'):
- find = linkId in dropLink
+ linkType = res['network'][0]['ietf-network-topology:link'][i]['org-openroadm-common-network:link-type']
+ if linkType in check_list:
+ find = linkId in check_list[linkType]
self.assertEqual(find, True)
- dropLink.remove(linkId)
+ (check_list[linkType]).remove(linkId)
else:
self.assertFalse(True)
- self.assertEqual(len(expressLink), 0)
- self.assertEqual(len(addLink), 0)
- self.assertEqual(len(dropLink), 0)
+ for link_type in check_list:
+ self.assertEqual(len(check_list[link_type]), 0)
def test_05_getNodes_OpenRoadmTopology(self):
# pylint: disable=redundant-unittest-assert
res['network'][0]['node'][i]['supporting-node'])
nodeType = res['network'][0]['node'][i]['org-openroadm-common-network:node-type']
nodeId = res['network'][0]['node'][i]['node-id']
- if nodeId == 'ROADMA01-SRG1':
- # Test related to SRG1
- self.assertEqual(nodeType, 'SRG')
- self.assertEqual(len(res['network'][0]['node'][i]['ietf-network-topology:termination-point']), 17)
- self.assertIn({'tp-id': 'SRG1-CP-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-CP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'SRG1-PP1-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-PP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'network-ref': 'clli-network', 'node-ref': 'NodeA'},
- res['network'][0]['node'][i]['supporting-node'])
- self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'ROADMA01'},
- res['network'][0]['node'][i]['supporting-node'])
- listNode.remove(nodeId)
- elif nodeId == 'ROADMA01-SRG3':
- # Test related to SRG1
- self.assertEqual(nodeType, 'SRG')
- self.assertEqual(len(res['network'][0]['node'][i]['ietf-network-topology:termination-point']), 17)
- self.assertIn({'tp-id': 'SRG3-CP-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-CP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'SRG3-PP1-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-PP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'network-ref': 'clli-network', 'node-ref': 'NodeA'},
- res['network'][0]['node'][i]['supporting-node'])
- self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'ROADMA01'},
- res['network'][0]['node'][i]['supporting-node'])
- listNode.remove(nodeId)
- elif nodeId == 'ROADMA01-DEG1':
- # Test related to DEG1
- self.assertEqual(nodeType, 'DEGREE')
- self.assertIn({'tp-id': 'DEG1-TTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-TTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'DEG1-CTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-CTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- listNode.remove(nodeId)
- self.assertIn({'network-ref': 'clli-network', 'node-ref': 'NodeA'},
- res['network'][0]['node'][i]['supporting-node'])
- self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'ROADMA01'},
- res['network'][0]['node'][i]['supporting-node'])
- elif nodeId == 'ROADMA01-DEG2':
- # Test related to DEG2
- self.assertEqual(nodeType, 'DEGREE')
- self.assertIn({'tp-id': 'DEG2-TTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-TTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'DEG2-CTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-CTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
+ if nodeId in self.CHECK_DICT1:
+ self.assertEqual(nodeType, self.CHECK_DICT1[nodeId]['node_type'])
+ if self.CHECK_DICT1[nodeId]['node_type'] == 'SRG':
+ self.assertEqual(len(res['network'][0]['node'][i]['ietf-network-topology:termination-point']), 17)
+ for item in self.CHECK_DICT1[nodeId]['checks_tp']:
+ self.assertIn(item, res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
self.assertIn({'network-ref': 'clli-network', 'node-ref': 'NodeA'},
res['network'][0]['node'][i]['supporting-node'])
self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'ROADMA01'},
listNode.remove(nodeId)
else:
self.assertFalse(True)
+
self.assertEqual(len(listNode), 0)
def test_06_connect_XPDRA(self):
- response = test_utils.mount_device("XPDRA01", 'xpdra')
+ response = test_utils.mount_device("XPDRA01", ('xpdra', self.NODE_VERSION))
self.assertEqual(response.status_code, requests.codes.created, test_utils.CODE_SHOULD_BE_201)
def test_07_getClliNetwork(self):
self.assertTrue(client == 4)
self.assertTrue(network == 2)
listNode.remove(nodeId)
- elif nodeId == 'ROADMA01-SRG1':
- # Test related to SRG1
- self.assertEqual(nodeType, 'SRG')
- self.assertEqual(len(res['network'][0]['node'][i]['ietf-network-topology:termination-point']), 17)
- self.assertIn({'tp-id': 'SRG1-CP-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-CP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'SRG1-PP1-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-PP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'ROADMA01'},
- res['network'][0]['node'][i]['supporting-node'])
- listNode.remove(nodeId)
- elif nodeId == 'ROADMA01-SRG3':
- # Test related to SRG1
- self.assertEqual(nodeType, 'SRG')
- self.assertEqual(len(res['network'][0]['node'][i]['ietf-network-topology:termination-point']), 17)
- self.assertIn({'tp-id': 'SRG3-CP-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-CP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'SRG3-PP1-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-PP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'ROADMA01'},
- res['network'][0]['node'][i]['supporting-node'])
- listNode.remove(nodeId)
- elif nodeId == 'ROADMA01-DEG1':
- # Test related to DEG1
- self.assertEqual(nodeType, 'DEGREE')
- self.assertIn({'tp-id': 'DEG1-TTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-TTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'DEG1-CTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-CTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'ROADMA01'},
+ # Tests related to ROADMA nodes
+ elif nodeId in self.CHECK_DICT1:
+ self.assertEqual(nodeType, self.CHECK_DICT1[nodeId]['node_type'])
+ if self.CHECK_DICT1[nodeId]['node_type'] == 'SRG':
+ self.assertEqual(len(res['network'][0]['node'][i]['ietf-network-topology:termination-point']), 17)
+ for item in self.CHECK_DICT1[nodeId]['checks_tp']:
+ self.assertIn(item, res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
+ self.assertIn({'network-ref': 'clli-network', 'node-ref': 'NodeA'},
res['network'][0]['node'][i]['supporting-node'])
- listNode.remove(nodeId)
- elif nodeId == 'ROADMA01-DEG2':
- # Test related to DEG2
- self.assertEqual(nodeType, 'DEGREE')
- self.assertIn({'tp-id': 'DEG2-TTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-TTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'DEG2-CTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-CTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'ROADMA01'},
res['network'][0]['node'][i]['supporting-node'])
listNode.remove(nodeId)
# Tests related to links
nbLink = len(res['network'][0]['ietf-network-topology:link'])
self.assertEqual(nbLink, 12)
- expressLink = ['ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX',
- 'ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX']
- addLink = ['ROADMA01-SRG1-SRG1-CP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX',
- 'ROADMA01-SRG1-SRG1-CP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX',
- 'ROADMA01-SRG3-SRG3-CP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX',
- 'ROADMA01-SRG3-SRG3-CP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX']
- dropLink = ['ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-SRG1-SRG1-CP-TXRX',
- 'ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-SRG1-SRG1-CP-TXRX',
- 'ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-SRG3-SRG3-CP-TXRX',
- 'ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-SRG3-SRG3-CP-TXRX']
- XPDR_IN = ['ROADMA01-SRG1-SRG1-PP1-TXRXtoXPDRA01-XPDR1-XPDR1-NETWORK1']
- XPDR_OUT = ['XPDRA01-XPDR1-XPDR1-NETWORK1toROADMA01-SRG1-SRG1-PP1-TXRX']
+ check_list = {'EXPRESS-LINK': ['ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX',
+ 'ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX'],
+ 'ADD-LINK': ['ROADMA01-SRG1-SRG1-CP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX',
+ 'ROADMA01-SRG1-SRG1-CP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX',
+ 'ROADMA01-SRG3-SRG3-CP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX',
+ 'ROADMA01-SRG3-SRG3-CP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX'],
+ 'DROP-LINK': ['ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-SRG1-SRG1-CP-TXRX',
+ 'ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-SRG1-SRG1-CP-TXRX',
+ 'ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-SRG3-SRG3-CP-TXRX',
+ 'ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-SRG3-SRG3-CP-TXRX'],
+ 'XPONDER-INPUT': ['ROADMA01-SRG1-SRG1-PP1-TXRXtoXPDRA01-XPDR1-XPDR1-NETWORK1'],
+ 'XPONDER-OUTPUT': ['XPDRA01-XPDR1-XPDR1-NETWORK1toROADMA01-SRG1-SRG1-PP1-TXRX']
+ }
for i in range(0, nbLink):
- nodeType = res['network'][0]['ietf-network-topology:link'][i]['org-openroadm-common-network:link-type']
linkId = res['network'][0]['ietf-network-topology:link'][i]['link-id']
- if nodeType == 'EXPRESS-LINK':
- find = linkId in expressLink
- self.assertEqual(find, True)
- expressLink.remove(linkId)
- elif nodeType == 'ADD-LINK':
- find = linkId in addLink
- self.assertEqual(find, True)
- addLink.remove(linkId)
- elif nodeType == 'DROP-LINK':
- find = linkId in dropLink
+ linkType = res['network'][0]['ietf-network-topology:link'][i]['org-openroadm-common-network:link-type']
+ if linkType in check_list:
+ find = linkId in check_list[linkType]
self.assertEqual(find, True)
- dropLink.remove(linkId)
- elif nodeType == 'XPONDER-INPUT':
- find = linkId in XPDR_IN
- self.assertEqual(find, True)
- XPDR_IN.remove(linkId)
- elif nodeType == 'XPONDER-OUTPUT':
- find = linkId in XPDR_OUT
- self.assertEqual(find, True)
- XPDR_OUT.remove(linkId)
+ (check_list[linkType]).remove(linkId)
else:
self.assertFalse(True)
- self.assertEqual(len(expressLink), 0)
- self.assertEqual(len(addLink), 0)
- self.assertEqual(len(dropLink), 0)
- self.assertEqual(len(XPDR_IN), 0)
- self.assertEqual(len(XPDR_OUT), 0)
+ for link_type in check_list:
+ self.assertEqual(len(check_list[link_type]), 0)
def test_13_connect_ROADMC(self):
- response = test_utils.mount_device("ROADMC01", 'roadmc')
+ response = test_utils.mount_device("ROADMC01", ('roadmc', self.NODE_VERSION))
self.assertEqual(response.status_code, requests.codes.created, test_utils.CODE_SHOULD_BE_201)
def test_14_omsAttributes_ROADMA_ROADMC(self):
self.assertEqual(response.status_code, requests.codes.created)
def test_16_getClliNetwork(self):
+ # pylint: disable=redundant-unittest-assert
response = test_utils.get_clli_net_request()
self.assertEqual(response.status_code, requests.codes.ok)
res = response.json()
listNode = ['NodeA', 'NodeC']
for i in range(0, nbNode):
nodeId = res['network'][0]['node'][i]['node-id']
- find = nodeId in listNode
- self.assertEqual(find, True)
- if nodeId == 'NodeA':
- self.assertEqual(res['network'][0]['node'][i]['org-openroadm-clli-network:clli'], 'NodeA')
+ if nodeId in listNode:
+ self.assertEqual(res['network'][0]['node'][i]['org-openroadm-clli-network:clli'], nodeId)
+ listNode.remove(nodeId)
else:
- self.assertEqual(res['network'][0]['node'][i]['org-openroadm-clli-network:clli'], 'NodeC')
- listNode.remove(nodeId)
-
+ self.assertFalse(True)
self.assertEqual(len(listNode), 0)
def test_17_getOpenRoadmNetwork(self):
nbNode = len(res['network'][0]['node'])
self.assertEqual(nbNode, 3)
listNode = ['XPDRA01', 'ROADMA01', 'ROADMC01']
+ CHECK_LIST = {'XPDRA01': {'node-ref': 'NodeA', 'node-type': 'XPONDER', 'model': '1'},
+ 'ROADMA01': {'node-ref': 'NodeA', 'node-type': 'ROADM', 'model': '2'},
+ 'ROADMC01': {'node-ref': 'NodeC', 'node-type': 'ROADM', 'model': '2'}
+ }
for i in range(0, nbNode):
self.assertEqual(res['network'][0]['node'][i]['supporting-node'][0]['network-ref'], 'clli-network')
nodeId = res['network'][0]['node'][i]['node-id']
- if nodeId == 'XPDRA01':
- self.assertEqual(res['network'][0]['node'][i]['supporting-node'][0]['node-ref'], 'NodeA')
- self.assertEqual(res['network'][0]['node'][i]['org-openroadm-common-network:node-type'], 'XPONDER')
- self.assertEqual(res['network'][0]['node'][i]['org-openroadm-network:model'], '1')
- listNode.remove(nodeId)
- elif nodeId == 'ROADMA01':
- self.assertEqual(res['network'][0]['node'][i]['supporting-node'][0]['node-ref'], 'NodeA')
- self.assertEqual(res['network'][0]['node'][i]['org-openroadm-common-network:node-type'], 'ROADM')
- self.assertEqual(res['network'][0]['node'][i]['org-openroadm-network:model'], '2')
- listNode.remove(nodeId)
- elif nodeId == 'ROADMC01':
- self.assertEqual(res['network'][0]['node'][i]['supporting-node'][0]['node-ref'], 'NodeC')
- self.assertEqual(res['network'][0]['node'][i]['org-openroadm-common-network:node-type'], 'ROADM')
- self.assertEqual(res['network'][0]['node'][i]['org-openroadm-network:model'], '2')
+ if nodeId in CHECK_LIST:
+ self.assertEqual(res['network'][0]['node'][i]['supporting-node'][0]['node-ref'],
+ CHECK_LIST[nodeId]['node-ref'])
+ self.assertEqual(res['network'][0]['node'][i]['org-openroadm-common-network:node-type'],
+ CHECK_LIST[nodeId]['node-type'])
+ self.assertEqual(res['network'][0]['node'][i]['org-openroadm-network:model'],
+ CHECK_LIST[nodeId]['model'])
listNode.remove(nodeId)
else:
self.assertFalse(True)
# Tests related to links
nbLink = len(res['network'][0]['ietf-network-topology:link'])
self.assertEqual(nbLink, 20)
- expressLink = ['ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX',
- 'ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX',
- 'ROADMC01-DEG2-DEG2-CTP-TXRXtoROADMC01-DEG1-DEG1-CTP-TXRX',
- 'ROADMC01-DEG1-DEG1-CTP-TXRXtoROADMC01-DEG2-DEG2-CTP-TXRX']
- addLink = ['ROADMA01-SRG1-SRG1-CP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX',
- 'ROADMA01-SRG1-SRG1-CP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX',
- 'ROADMA01-SRG3-SRG3-CP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX',
- 'ROADMA01-SRG3-SRG3-CP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX',
- 'ROADMC01-SRG1-SRG1-CP-TXRXtoROADMC01-DEG2-DEG2-CTP-TXRX',
- 'ROADMC01-SRG1-SRG1-CP-TXRXtoROADMC01-DEG1-DEG1-CTP-TXRX']
- dropLink = ['ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-SRG1-SRG1-CP-TXRX',
- 'ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-SRG1-SRG1-CP-TXRX',
- 'ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-SRG3-SRG3-CP-TXRX',
- 'ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-SRG3-SRG3-CP-TXRX',
- 'ROADMC01-DEG1-DEG1-CTP-TXRXtoROADMC01-SRG1-SRG1-CP-TXRX',
- 'ROADMC01-DEG2-DEG2-CTP-TXRXtoROADMC01-SRG1-SRG1-CP-TXRX']
- R2RLink = ['ROADMA01-DEG1-DEG1-TTP-TXRXtoROADMC01-DEG2-DEG2-TTP-TXRX',
- 'ROADMC01-DEG2-DEG2-TTP-TXRXtoROADMA01-DEG1-DEG1-TTP-TXRX']
- XPDR_IN = ['ROADMA01-SRG1-SRG1-PP1-TXRXtoXPDRA01-XPDR1-XPDR1-NETWORK1']
- XPDR_OUT = ['XPDRA01-XPDR1-XPDR1-NETWORK1toROADMA01-SRG1-SRG1-PP1-TXRX']
+ check_list = {'EXPRESS-LINK': ['ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX',
+ 'ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX',
+ 'ROADMC01-DEG2-DEG2-CTP-TXRXtoROADMC01-DEG1-DEG1-CTP-TXRX',
+ 'ROADMC01-DEG1-DEG1-CTP-TXRXtoROADMC01-DEG2-DEG2-CTP-TXRX'],
+ 'ADD-LINK': ['ROADMA01-SRG1-SRG1-CP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX',
+ 'ROADMA01-SRG1-SRG1-CP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX',
+ 'ROADMA01-SRG3-SRG3-CP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX',
+ 'ROADMA01-SRG3-SRG3-CP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX',
+ 'ROADMC01-SRG1-SRG1-CP-TXRXtoROADMC01-DEG2-DEG2-CTP-TXRX',
+ 'ROADMC01-SRG1-SRG1-CP-TXRXtoROADMC01-DEG1-DEG1-CTP-TXRX'],
+ 'DROP-LINK': ['ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-SRG1-SRG1-CP-TXRX',
+ 'ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-SRG1-SRG1-CP-TXRX',
+ 'ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-SRG3-SRG3-CP-TXRX',
+ 'ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-SRG3-SRG3-CP-TXRX',
+ 'ROADMC01-DEG1-DEG1-CTP-TXRXtoROADMC01-SRG1-SRG1-CP-TXRX',
+ 'ROADMC01-DEG2-DEG2-CTP-TXRXtoROADMC01-SRG1-SRG1-CP-TXRX'],
+ 'ROADM-TO-ROADM': ['ROADMA01-DEG1-DEG1-TTP-TXRXtoROADMC01-DEG2-DEG2-TTP-TXRX',
+ 'ROADMC01-DEG2-DEG2-TTP-TXRXtoROADMA01-DEG1-DEG1-TTP-TXRX'],
+ 'XPONDER-INPUT': ['ROADMA01-SRG1-SRG1-PP1-TXRXtoXPDRA01-XPDR1-XPDR1-NETWORK1'],
+ 'XPONDER-OUTPUT': ['XPDRA01-XPDR1-XPDR1-NETWORK1toROADMA01-SRG1-SRG1-PP1-TXRX']
+ }
for i in range(0, nbLink):
- nodeType = res['network'][0]['ietf-network-topology:link'][i]['org-openroadm-common-network:link-type']
linkId = res['network'][0]['ietf-network-topology:link'][i]['link-id']
- if nodeType == 'EXPRESS-LINK':
- find = linkId in expressLink
- self.assertEqual(find, True)
- expressLink.remove(linkId)
- elif nodeType == 'ADD-LINK':
- find = linkId in addLink
- self.assertEqual(find, True)
- addLink.remove(linkId)
- elif nodeType == 'DROP-LINK':
- find = linkId in dropLink
- self.assertEqual(find, True)
- dropLink.remove(linkId)
- elif nodeType == 'ROADM-TO-ROADM':
- find = linkId in R2RLink
- self.assertEqual(find, True)
- R2RLink.remove(linkId)
- elif nodeType == 'XPONDER-INPUT':
- find = linkId in XPDR_IN
- self.assertEqual(find, True)
- XPDR_IN.remove(linkId)
- elif nodeType == 'XPONDER-OUTPUT':
- find = linkId in XPDR_OUT
+ linkType = res['network'][0]['ietf-network-topology:link'][i]['org-openroadm-common-network:link-type']
+ if linkType in check_list:
+ find = linkId in check_list[linkType]
self.assertEqual(find, True)
- XPDR_OUT.remove(linkId)
+ (check_list[linkType]).remove(linkId)
else:
self.assertFalse(True)
- self.assertEqual(len(expressLink), 0)
- self.assertEqual(len(addLink), 0)
- self.assertEqual(len(dropLink), 0)
- self.assertEqual(len(R2RLink), 0)
- self.assertEqual(len(XPDR_IN), 0)
- self.assertEqual(len(XPDR_OUT), 0)
+ for link_type in check_list:
+ self.assertEqual(len(check_list[link_type]), 0)
def test_19_getLinkOmsAttributesOpenRoadmTopology(self):
response = test_utils.get_ordm_topo_request("")
listNode = ['XPDRA01-XPDR1',
'ROADMA01-SRG1', 'ROADMA01-SRG3', 'ROADMA01-DEG1', 'ROADMA01-DEG2',
'ROADMC01-SRG1', 'ROADMC01-DEG1', 'ROADMC01-DEG2']
- # ************************Tests related to XPDRA nodes
for i in range(0, nbNode):
nodeType = res['network'][0]['node'][i]['org-openroadm-common-network:node-type']
nodeId = res['network'][0]['node'][i]['node-id']
+ # Tests related to XPDRA nodes
if nodeId == 'XPDRA01-XPDR1':
self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'XPDRA01'},
res['network'][0]['node'][i]['supporting-node'])
self.assertTrue(client == 4)
self.assertTrue(network == 2)
listNode.remove(nodeId)
- elif nodeId == 'ROADMA01-SRG1':
- # Test related to SRG1
- self.assertEqual(len(res['network'][0]['node'][i]['ietf-network-topology:termination-point']), 17)
- self.assertIn({'tp-id': 'SRG1-CP-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-CP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'SRG1-PP1-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-PP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'ROADMA01'},
- res['network'][0]['node'][i]['supporting-node'])
- self.assertEqual(res['network'][0]['node'][i]['org-openroadm-common-network:node-type'], 'SRG')
- listNode.remove(nodeId)
- elif nodeId == 'ROADMA01-SRG3':
- # Test related to SRG1
- self.assertEqual(len(res['network'][0]['node'][i]['ietf-network-topology:termination-point']), 17)
- self.assertIn({'tp-id': 'SRG3-CP-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-CP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'SRG3-PP1-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-PP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'ROADMA01'},
- res['network'][0]['node'][i]['supporting-node'])
- self.assertEqual(res['network'][0]['node'][i]['org-openroadm-common-network:node-type'], 'SRG')
- listNode.remove(nodeId)
- elif nodeId == 'ROADMA01-DEG1':
- # Test related to DEG1
- self.assertIn({'tp-id': 'DEG1-TTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-TTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'DEG1-CTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-CTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'ROADMA01'},
+ # Tests related to ROADMA nodes
+ elif nodeId in self.CHECK_DICT1:
+ self.assertEqual(nodeType, self.CHECK_DICT1[nodeId]['node_type'])
+ if self.CHECK_DICT1[nodeId]['node_type'] == 'SRG':
+ self.assertEqual(len(res['network'][0]['node'][i]['ietf-network-topology:termination-point']), 17)
+ for item in self.CHECK_DICT1[nodeId]['checks_tp']:
+ self.assertIn(item, res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
+ self.assertIn({'network-ref': 'clli-network', 'node-ref': 'NodeA'},
res['network'][0]['node'][i]['supporting-node'])
- self.assertEqual(res['network'][0]['node'][i]['org-openroadm-common-network:node-type'], 'DEGREE')
- listNode.remove(nodeId)
- elif nodeId == 'ROADMA01-DEG2':
- # Test related to DEG2
- self.assertIn({'tp-id': 'DEG2-TTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-TTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'DEG2-CTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-CTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'ROADMA01'},
res['network'][0]['node'][i]['supporting-node'])
- self.assertEqual(res['network'][0]['node'][i]['org-openroadm-common-network:node-type'], 'DEGREE')
- listNode.remove(nodeId)
- elif nodeId == 'ROADMC01-SRG1':
- # Test related to SRG1
- self.assertEqual(len(res['network'][0]['node'][i]['ietf-network-topology:termination-point']), 17)
- self.assertIn({'tp-id': 'SRG1-CP-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-CP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'SRG1-PP1-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-PP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'ROADMC01'},
- res['network'][0]['node'][i]['supporting-node'])
- self.assertEqual(res['network'][0]['node'][i]['org-openroadm-common-network:node-type'], 'SRG')
+ self.assertEqual(res['network'][0]['node'][i]['org-openroadm-common-network:node-type'],
+ self.CHECK_DICT1[nodeId]['node_type'])
listNode.remove(nodeId)
- elif nodeId == 'ROADMC01-DEG1':
- # Test related to DEG1
- self.assertIn({'tp-id': 'DEG1-TTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-TTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'DEG1-CTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-CTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'ROADMC01'},
+ # Tests related to ROADMC nodes
+ elif nodeId in self.CHECK_DICT2:
+ self.assertEqual(nodeType, self.CHECK_DICT2[nodeId]['node_type'])
+ if self.CHECK_DICT2[nodeId]['node_type'] == 'SRG':
+ self.assertEqual(len(res['network'][0]['node'][i]['ietf-network-topology:termination-point']), 17)
+ for item in self.CHECK_DICT2[nodeId]['checks_tp']:
+ self.assertIn(item, res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
+ self.assertIn({'network-ref': 'clli-network', 'node-ref': 'NodeC'},
res['network'][0]['node'][i]['supporting-node'])
- self.assertEqual(res['network'][0]['node'][i]['org-openroadm-common-network:node-type'], 'DEGREE')
- listNode.remove(nodeId)
- elif nodeId == 'ROADMC01-DEG2':
- # Test related to DEG2
- self.assertIn({'tp-id': 'DEG2-TTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-TTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'DEG2-CTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-CTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'ROADMC01'},
res['network'][0]['node'][i]['supporting-node'])
- self.assertEqual(res['network'][0]['node'][i]['org-openroadm-common-network:node-type'], 'DEGREE')
+ self.assertEqual(res['network'][0]['node'][i]['org-openroadm-common-network:node-type'],
+ self.CHECK_DICT2[nodeId]['node_type'])
listNode.remove(nodeId)
else:
self.assertFalse(True)
self.assertEqual(len(listNode), 0)
def test_21_connect_ROADMB(self):
- response = test_utils.mount_device("ROADMB01", 'roadmb')
+ response = test_utils.mount_device("ROADMB01", ('roadmb', self.NODE_VERSION))
self.assertEqual(response.status_code, requests.codes.created, test_utils.CODE_SHOULD_BE_201)
def test_22_omsAttributes_ROADMA_ROADMB(self):
self.assertEqual(response.status_code, requests.codes.created)
def test_26_getClliNetwork(self):
+ # pylint: disable=redundant-unittest-assert
response = test_utils.get_clli_net_request()
self.assertEqual(response.status_code, requests.codes.ok)
res = response.json()
listNode = ['NodeA', 'NodeB', 'NodeC']
for i in range(0, nbNode):
nodeId = res['network'][0]['node'][i]['node-id']
- find = nodeId in listNode
- self.assertEqual(find, True)
- if nodeId == 'NodeA':
- self.assertEqual(res['network'][0]['node'][i]['org-openroadm-clli-network:clli'], 'NodeA')
- elif nodeId == 'NodeB':
- self.assertEqual(res['network'][0]['node'][i]['org-openroadm-clli-network:clli'], 'NodeB')
+ if nodeId in listNode:
+ self.assertEqual(res['network'][0]['node'][i]['org-openroadm-clli-network:clli'], nodeId)
+ listNode.remove(nodeId)
else:
- self.assertEqual(res['network'][0]['node'][i]['org-openroadm-clli-network:clli'], 'NodeC')
- listNode.remove(nodeId)
+ self.assertFalse(True)
self.assertEqual(len(listNode), 0)
def test_27_verifyDegree(self):
self.assertEqual(res_oppLink['ietf-network-topology:link'][0]['source']['source-node'], link_dest)
self.assertEqual(res_oppLink['ietf-network-topology:link'][0]['destination']['dest-node'], link_src)
oppLink_type = res_oppLink['ietf-network-topology:link'][0]['org-openroadm-common-network:link-type']
- if link_type == 'ADD-LINK':
- self.assertEqual(oppLink_type, 'DROP-LINK')
- elif link_type == 'DROP-LINK':
- self.assertEqual(oppLink_type, 'ADD-LINK')
- elif link_type == 'EXPRESS-LINK':
- self.assertEqual(oppLink_type, 'EXPRESS-LINK')
- elif link_type == 'ROADM-TO-ROADM':
- self.assertEqual(oppLink_type, 'ROADM-TO-ROADM')
- elif link_type == 'XPONDER-INPUT':
- self.assertEqual(oppLink_type, 'XPONDER-OUTPUT')
- elif link_type == 'XPONDER-OUTPUT':
- self.assertEqual(oppLink_type, 'XPONDER-INPUT')
+ CHECK_DICT = {'ADD-LINK': 'DROP-LINK', 'DROP-LINK': 'ADD-LINK',
+ 'EXPRESS-LINK': 'EXPRESS-LINK', 'ROADM-TO-ROADM': 'ROADM-TO-ROADM',
+ 'XPONDER-INPUT': 'XPONDER-OUTPUT', 'XPONDER-OUTUT': 'XPONDER-INPUT'}
+ if link_type in CHECK_DICT:
+ self.assertEqual(oppLink_type, CHECK_DICT[link_type])
def test_29_getLinkOmsAttributesOpenRoadmTopology(self):
response = test_utils.get_ordm_topo_request("")
self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'XPDRA01'},
res['network'][0]['node'][i]['supporting-node'])
listNode.remove(nodeId)
- elif nodeId == 'ROADMA01-SRG1':
- # Test related to SRG1
- self.assertEqual(nodeType, 'SRG')
- self.assertEqual(len(res['network'][0]['node'][i]['ietf-network-topology:termination-point']), 17)
- self.assertIn({'tp-id': 'SRG1-CP-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-CP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'SRG1-PP1-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-PP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'ROADMA01'},
- res['network'][0]['node'][i]['supporting-node'])
- listNode.remove(nodeId)
- elif nodeId == 'ROADMA01-SRG3':
- # Test related to SRG1
- self.assertEqual(nodeType, 'SRG')
- self.assertEqual(len(res['network'][0]['node'][i]['ietf-network-topology:termination-point']), 17)
- self.assertIn({'tp-id': 'SRG3-CP-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-CP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'SRG3-PP1-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-PP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'ROADMA01'},
- res['network'][0]['node'][i]['supporting-node'])
- listNode.remove(nodeId)
- elif nodeId == 'ROADMA01-DEG1':
- # Test related to DEG1
- self.assertEqual(nodeType, 'DEGREE')
- self.assertIn({'tp-id': 'DEG1-TTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-TTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'DEG1-CTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-CTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'ROADMA01'},
+ # Tests related to ROADMA nodes
+ elif nodeId in self.CHECK_DICT1:
+ self.assertEqual(nodeType, self.CHECK_DICT1[nodeId]['node_type'])
+ if self.CHECK_DICT1[nodeId]['node_type'] == 'SRG':
+ self.assertEqual(len(res['network'][0]['node'][i]['ietf-network-topology:termination-point']), 17)
+ for item in self.CHECK_DICT1[nodeId]['checks_tp']:
+ self.assertIn(item, res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
+ self.assertIn({'network-ref': 'clli-network', 'node-ref': 'NodeA'},
res['network'][0]['node'][i]['supporting-node'])
- listNode.remove(nodeId)
- elif nodeId == 'ROADMA01-DEG2':
- # Test related to DEG2
- self.assertEqual(nodeType, 'DEGREE')
- self.assertIn({'tp-id': 'DEG2-TTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-TTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'DEG2-CTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-CTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'ROADMA01'},
res['network'][0]['node'][i]['supporting-node'])
listNode.remove(nodeId)
res['network'][0]['node'][i]['supporting-node'])
nodeType = res['network'][0]['node'][i]['org-openroadm-common-network:node-type']
nodeId = res['network'][0]['node'][i]['node-id']
- if nodeId == 'ROADMA01-SRG1':
- # Test related to SRG1
- self.assertEqual(nodeType, 'SRG')
- self.assertEqual(len(res['network'][0]['node'][i]['ietf-network-topology:termination-point']), 17)
- self.assertIn({'tp-id': 'SRG1-CP-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-CP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'SRG1-PP1-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-PP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- listNode.remove(nodeId)
- elif nodeId == 'ROADMA01-SRG3':
- # Test related to SRG1
- self.assertEqual(nodeType, 'SRG')
- self.assertEqual(len(res['network'][0]['node'][i]['ietf-network-topology:termination-point']), 17)
- self.assertIn({'tp-id': 'SRG3-CP-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-CP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'SRG3-PP1-TXRX', 'org-openroadm-common-network:tp-type': 'SRG-TXRX-PP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- listNode.remove(nodeId)
- elif nodeId == 'ROADMA01-DEG1':
- # Test related to DEG1
- self.assertEqual(nodeType, 'DEGREE')
- self.assertIn({'tp-id': 'DEG1-TTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-TTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'DEG1-CTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-CTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- listNode.remove(nodeId)
- elif nodeId == 'ROADMA01-DEG2':
- # Test related to DEG2
- self.assertEqual(nodeType, 'DEGREE')
- self.assertIn({'tp-id': 'DEG2-TTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-TTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
- self.assertIn({'tp-id': 'DEG2-CTP-TXRX', 'org-openroadm-common-network:tp-type': 'DEGREE-TXRX-CTP'},
- res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
+ if nodeId in self.CHECK_DICT1:
+ self.assertEqual(nodeType, self.CHECK_DICT1[nodeId]['node_type'])
+ if self.CHECK_DICT1[nodeId]['node_type'] == 'SRG':
+ self.assertEqual(len(res['network'][0]['node'][i]['ietf-network-topology:termination-point']), 17)
+ for item in self.CHECK_DICT1[nodeId]['checks_tp']:
+ self.assertIn(item, res['network'][0]['node'][i]['ietf-network-topology:termination-point'])
+ self.assertIn({'network-ref': 'clli-network', 'node-ref': 'NodeA'},
+ res['network'][0]['node'][i]['supporting-node'])
+ self.assertIn({'network-ref': 'openroadm-network', 'node-ref': 'ROADMA01'},
+ res['network'][0]['node'][i]['supporting-node'])
listNode.remove(nodeId)
else:
self.assertFalse(True)
res = response.json()
nbLink = len(res['network'][0]['ietf-network-topology:link'])
self.assertEqual(nbLink, 16)
- expressLink = ['ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX',
- 'ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX']
- addLink = ['ROADMA01-SRG1-SRG1-CP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX',
- 'ROADMA01-SRG1-SRG1-CP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX',
- 'ROADMA01-SRG3-SRG3-CP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX',
- 'ROADMA01-SRG3-SRG3-CP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX']
- dropLink = ['ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-SRG1-SRG1-CP-TXRX',
- 'ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-SRG1-SRG1-CP-TXRX',
- 'ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-SRG3-SRG3-CP-TXRX',
- 'ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-SRG3-SRG3-CP-TXRX']
+ check_list = {'EXPRESS-LINK': ['ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX',
+ 'ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX'],
+ 'ADD-LINK': ['ROADMA01-SRG1-SRG1-CP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX',
+ 'ROADMA01-SRG1-SRG1-CP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX',
+ 'ROADMA01-SRG3-SRG3-CP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX',
+ 'ROADMA01-SRG3-SRG3-CP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX'],
+ 'DROP-LINK': ['ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-SRG1-SRG1-CP-TXRX',
+ 'ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-SRG1-SRG1-CP-TXRX',
+ 'ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-SRG3-SRG3-CP-TXRX',
+ 'ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-SRG3-SRG3-CP-TXRX']
+ }
roadmtoroadmLink = 0
for i in range(0, nbLink):
- if (res['network'][0]['ietf-network-topology:link'][i]['org-openroadm-common-network:link-type']
- == 'EXPRESS-LINK'):
- link_id = res['network'][0]['ietf-network-topology:link'][i]['link-id']
- find = link_id in expressLink
- self.assertEqual(find, True)
- expressLink.remove(link_id)
- elif (res['network'][0]['ietf-network-topology:link'][i]['org-openroadm-common-network:link-type']
- == 'ADD-LINK'):
- link_id = res['network'][0]['ietf-network-topology:link'][i]['link-id']
- find = link_id in addLink
- self.assertEqual(find, True)
- addLink.remove(link_id)
- elif (res['network'][0]['ietf-network-topology:link'][i]['org-openroadm-common-network:link-type']
- == 'DROP-LINK'):
- link_id = res['network'][0]['ietf-network-topology:link'][i]['link-id']
- find = link_id in dropLink
+ linkId = res['network'][0]['ietf-network-topology:link'][i]['link-id']
+ linkType = res['network'][0]['ietf-network-topology:link'][i]['org-openroadm-common-network:link-type']
+ if linkType in check_list:
+ find = linkId in check_list[linkType]
self.assertEqual(find, True)
- dropLink.remove(link_id)
+ (check_list[linkType]).remove(linkId)
else:
roadmtoroadmLink += 1
- self.assertEqual(len(expressLink), 0)
- self.assertEqual(len(addLink), 0)
- self.assertEqual(len(dropLink), 0)
+ for link_type in check_list:
+ self.assertEqual(len(check_list[link_type]), 0)
self.assertEqual(roadmtoroadmLink, 6)
for i in range(0, nbLink):
self.assertNotEqual(res['network'][0]['ietf-network-topology:link'][i]