Adding SAPI/DAPI to Renderer
[transportpce.git] / tests / transportpce_tests / 2.2.1 / test_otn_renderer.py
index cfd90383010295a8e6a6e0eef401baa1e4be68d3..0ca2613b3e2c565b868a7c07ba7a5694a04b8584 100644 (file)
@@ -22,6 +22,10 @@ import logging
 import test_utils
 
 
+def extract_a_from_b(a, b):
+    return dict([(i, b[i]) for i in b.keys() if i in a.keys()])
+
+
 class TransportPCEtesting(unittest.TestCase):
 
     honeynode_process1 = None
@@ -100,8 +104,10 @@ class TransportPCEtesting(unittest.TestCase):
                 'org-openroadm-port-types:if-10GE'],
              'supporting-port': 'CP1-SFP4-P1',
              'supporting-circuit-pack-name': 'CP1-SFP4',
-             'logical-connection-point': 'XPDR1-CLIENT1', 'port-direction': 'bidirectional',
-             'port-qual': 'xpdr-client'},
+             'logical-connection-point': 'XPDR1-CLIENT1',
+              'port-direction': 'bidirectional',
+             'port-qual': 'xpdr-client',
+              'lcp-hash-val': '8b3efff522736722500b5e68fb6e696e'},
             res['mapping'])
 
     def test_03_get_portmapping_NETWORK1(self):
@@ -122,7 +128,8 @@ class TransportPCEtesting(unittest.TestCase):
                 "port-direction": "bidirectional",
                 "port-qual": "xpdr-network",
                 "supporting-circuit-pack-name": "CP1-CFP0",
-                "xponder-type": "mpdr"},
+                "xponder-type": "mpdr",
+             'lcp-hash-val': '1021db8d2affe7386705c438c67ea21f'},
             res['mapping'])
 
     def test_04_service_path_create_OCH_OTU4(self):
@@ -167,7 +174,8 @@ class TransportPCEtesting(unittest.TestCase):
                 "port-direction": "bidirectional",
                 "port-qual": "xpdr-network",
                 "supporting-circuit-pack-name": "CP1-CFP0",
-                "xponder-type": "mpdr"},
+                "xponder-type": "mpdr",
+                "lcp-hash-val": "1021db8d2affe7386705c438c67ea21f"},
             res['mapping'])
 
     def test_06_check_interface_och(self):
@@ -180,10 +188,24 @@ class TransportPCEtesting(unittest.TestCase):
             "GET", url, headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
+
+        input_dict = {'name': 'XPDR1-NETWORK1-1',
+                      'administrative-state': 'inService',
+                      'supporting-circuit-pack-name': 'CP1-CFP0',
+                      'type': 'org-openroadm-interfaces:opticalChannel',
+                      'supporting-port': 'CP1-CFP0-P1'
+                      }
+        # assertDictContainsSubset is deprecated
+        '''
         self.assertDictContainsSubset({'name': 'XPDR1-NETWORK1-1', 'administrative-state': 'inService',
                                        'supporting-circuit-pack-name': 'CP1-CFP0',
                                        'type': 'org-openroadm-interfaces:opticalChannel',
                                        'supporting-port': 'CP1-CFP0-P1'}, res['interface'][0])
+        '''
+        self.assertDictEqual(input_dict,
+                             extract_a_from_b(input_dict,
+                                  res['interface'][0])
+                             )
         self.assertDictEqual(
             {u'frequency': 196.1, u'rate': u'org-openroadm-common-types:R100G',
              u'transmit-power': -5},
@@ -199,10 +221,24 @@ class TransportPCEtesting(unittest.TestCase):
             "GET", url, headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
+        input_dict = {'name': 'XPDR1-NETWORK1-OTU',
+                      'administrative-state': 'inService',
+                      'supporting-circuit-pack-name': 'CP1-CFP0',
+                      'supporting-interface': 'XPDR1-NETWORK1-1',
+                      'type': 'org-openroadm-interfaces:otnOtu',
+                      'supporting-port': 'CP1-CFP0-P1'}
+
+        # assertDictContainsSubset is deprecated
+        '''
         self.assertDictContainsSubset({'name': 'XPDR1-NETWORK1-OTU', 'administrative-state': 'inService',
                                        'supporting-circuit-pack-name': 'CP1-CFP0', 'supporting-interface': 'XPDR1-NETWORK1-1',
                                        'type': 'org-openroadm-interfaces:otnOtu',
                                        'supporting-port': 'CP1-CFP0-P1'}, res['interface'][0])
+        '''
+        self.assertDictEqual(input_dict, extract_a_from_b(input_dict,
+                                                          res['interface'][0])
+                             )
+
         self.assertDictEqual(
             {u'rate': u'org-openroadm-otn-common-types:OTU4',
              u'fec': u'scfec'},
@@ -250,7 +286,9 @@ class TransportPCEtesting(unittest.TestCase):
             "port-qual": "xpdr-network",
             "supporting-circuit-pack-name": "CP1-CFP0",
             "xponder-type": "mpdr",
-            "supporting-odu4": "XPDR1-NETWORK1-ODU4"},
+            "supporting-odu4": "XPDR1-NETWORK1-ODU4",
+             "lcp-hash-val": "1021db8d2affe7386705c438c67ea21f"
+             },
             res['mapping'])
 
     def test_10_check_interface_ODU4(self):
@@ -263,6 +301,23 @@ class TransportPCEtesting(unittest.TestCase):
             "GET", url, headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
+        input_dict_1 = {'name': 'XPDR1-NETWORK1-ODU4', 'administrative-state': 'inService',
+                        'supporting-circuit-pack-name': 'CP1-CFP0', 'supporting-interface': 'XPDR1-NETWORK1-OTU',
+                        'type': 'org-openroadm-interfaces:otnOdu',
+                        'supporting-port': 'CP1-CFP0-P1'}
+        input_dict_2 = {'odu-function': 'org-openroadm-otn-common-types:ODU-TTP',
+                        'rate': 'org-openroadm-otn-common-types:ODU4'}
+
+        self.assertDictEqual(input_dict_1, extract_a_from_b(input_dict_1,
+                                                            res['interface'][0])
+                             )
+        self.assertDictEqual(input_dict_2,
+                             extract_a_from_b(input_dict_2,
+                                              res['interface'][0][
+                                                'org-openroadm-otn-odu-interfaces:odu'])
+
+                             )
+        '''
         self.assertDictContainsSubset({'name': 'XPDR1-NETWORK1-ODU4', 'administrative-state': 'inService',
                                        'supporting-circuit-pack-name': 'CP1-CFP0', 'supporting-interface': 'XPDR1-NETWORK1-OTU',
                                        'type': 'org-openroadm-interfaces:otnOdu',
@@ -271,6 +326,7 @@ class TransportPCEtesting(unittest.TestCase):
             {'odu-function': 'org-openroadm-otn-common-types:ODU-TTP',
              'rate': 'org-openroadm-otn-common-types:ODU4'},
             res['interface'][0]['org-openroadm-otn-odu-interfaces:odu'])
+        '''
         self.assertDictEqual(
             {u'payload-type': u'21', u'exp-payload-type': u'21'},
             res['interface'][0]['org-openroadm-otn-odu-interfaces:odu']['opu'])
@@ -314,10 +370,22 @@ class TransportPCEtesting(unittest.TestCase):
             "GET", url, headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
+        input_dict = {'name': 'XPDR1-CLIENT1-ETHERNET10G',
+                      'administrative-state': 'inService',
+                      'supporting-circuit-pack-name': 'CP1-SFP4',
+                      'type': 'org-openroadm-interfaces:ethernetCsmacd',
+                      'supporting-port': 'CP1-SFP4-P1'
+                      }
+
+        '''
         self.assertDictContainsSubset({'name': 'XPDR1-CLIENT1-ETHERNET10G', 'administrative-state': 'inService',
                                        'supporting-circuit-pack-name': 'CP1-SFP4',
                                        'type': 'org-openroadm-interfaces:ethernetCsmacd',
                                        'supporting-port': 'CP1-SFP4-P1'}, res['interface'][0])
+        '''
+        self.assertDictEqual(input_dict, extract_a_from_b(input_dict,
+                                                          res['interface'][0])
+                             )
         self.assertDictEqual(
             {u'speed': 10000},
             res['interface'][0]['org-openroadm-ethernet-interfaces:ethernet'])
@@ -332,6 +400,27 @@ class TransportPCEtesting(unittest.TestCase):
             "GET", url, headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
+
+        input_dict_1 = {'name': 'XPDR1-CLIENT1-ODU2e-service1',
+                        'administrative-state': 'inService',
+                        'supporting-circuit-pack-name': 'CP1-SFP4',
+                        'supporting-interface': 'XPDR1-CLIENT1-ETHERNET10G',
+                        'type': 'org-openroadm-interfaces:otnOdu',
+                        'supporting-port': 'CP1-SFP4-P1'}
+        input_dict_2 = {
+          'odu-function': 'org-openroadm-otn-common-types:ODU-TTP-CTP',
+          'rate': 'org-openroadm-otn-common-types:ODU2e',
+          'monitoring-mode': 'terminated'}
+
+        self.assertDictEqual(input_dict_1, extract_a_from_b(input_dict_1,
+                                                          res['interface'][0])
+                             )
+        self.assertDictEqual(input_dict_2,
+                             extract_a_from_b(input_dict_2, res['interface'][0][
+                               'org-openroadm-otn-odu-interfaces:odu'])
+                             )
+
+        '''
         self.assertDictContainsSubset({'name': 'XPDR1-CLIENT1-ODU2e-service1', 'administrative-state': 'inService',
                                        'supporting-circuit-pack-name': 'CP1-SFP4',
                                        'supporting-interface': 'XPDR1-CLIENT1-ETHERNET10G',
@@ -341,6 +430,7 @@ class TransportPCEtesting(unittest.TestCase):
             'odu-function': 'org-openroadm-otn-common-types:ODU-TTP-CTP',
             'rate': 'org-openroadm-otn-common-types:ODU2e',
             'monitoring-mode': 'terminated'}, res['interface'][0]['org-openroadm-otn-odu-interfaces:odu'])
+        '''
         self.assertDictEqual(
             {u'payload-type': u'03', u'exp-payload-type': u'03'},
             res['interface'][0]['org-openroadm-otn-odu-interfaces:odu']['opu'])
@@ -355,6 +445,35 @@ class TransportPCEtesting(unittest.TestCase):
             "GET", url, headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
+        input_dict_1 = {'name': 'XPDR1-NETWORK1-ODU2e-service1', 'administrative-state': 'inService',
+                        'supporting-circuit-pack-name': 'CP1-CFP0',
+                        'supporting-interface': 'XPDR1-NETWORK1-ODU4',
+                        'type': 'org-openroadm-interfaces:otnOdu',
+                        'supporting-port': 'CP1-CFP0-P1'}
+        input_dict_2 = {
+          'odu-function': 'org-openroadm-otn-common-types:ODU-CTP',
+          'rate': 'org-openroadm-otn-common-types:ODU2e',
+          'monitoring-mode': 'monitored'}
+
+        input_dict_3 = {'trib-port-number': 1}
+
+        self.assertDictEqual(input_dict_1, extract_a_from_b(input_dict_1,
+                                                            res['interface'][0])
+                             )
+
+        self.assertDictEqual(input_dict_2,
+                             extract_a_from_b(input_dict_2,
+                                              res['interface'][0][
+                                                'org-openroadm-otn-odu-interfaces:odu']
+                                              ))
+
+        self.assertDictEqual(input_dict_3,
+                             extract_a_from_b(input_dict_3,
+                                              res['interface'][0][
+                                                'org-openroadm-otn-odu-interfaces:odu'][
+                                                'parent-odu-allocation']))
+
+        '''
         self.assertDictContainsSubset({'name': 'XPDR1-NETWORK1-ODU2e-service1', 'administrative-state': 'inService',
                                        'supporting-circuit-pack-name': 'CP1-CFP0',
                                        'supporting-interface': 'XPDR1-NETWORK1-ODU4',
@@ -367,8 +486,11 @@ class TransportPCEtesting(unittest.TestCase):
         self.assertDictContainsSubset(
             {'trib-port-number': 1},
             res['interface'][0]['org-openroadm-otn-odu-interfaces:odu']['parent-odu-allocation'])
+        '''
         self.assertIn(1,
-                      res['interface'][0]['org-openroadm-otn-odu-interfaces:odu']['parent-odu-allocation']['trib-slots'])
+                      res['interface'][0][
+                        'org-openroadm-otn-odu-interfaces:odu'][
+                        'parent-odu-allocation']['trib-slots'])
 
     def test_15_check_ODU2E_connection(self):
         url = ("{}/config/network-topology:network-topology/topology/topology-netconf/"
@@ -380,10 +502,21 @@ class TransportPCEtesting(unittest.TestCase):
             "GET", url, headers=headers, auth=('admin', 'admin'))
         self.assertEqual(response.status_code, requests.codes.ok)
         res = response.json()
+        input_dict_1 = {
+          'connection-name':
+            'XPDR1-CLIENT1-ODU2e-service1-x-XPDR1-NETWORK1-ODU2e-service1',
+          'direction': 'bidirectional'
+        }
+
+        self.assertDictEqual(input_dict_1,
+                             extract_a_from_b(input_dict_1,
+                                              res['odu-connection'][0]))
+        '''
         self.assertDictContainsSubset({
             'connection-name': 'XPDR1-CLIENT1-ODU2e-service1-x-XPDR1-NETWORK1-ODU2e-service1',
             'direction': 'bidirectional'},
             res['odu-connection'][0])
+        '''
         self.assertDictEqual({u'dst-if': u'XPDR1-NETWORK1-ODU2e-service1'},
                              res['odu-connection'][0]['destination'])
         self.assertDictEqual({u'src-if': u'XPDR1-CLIENT1-ODU2e-service1'},