Migrate OLM functional tests to RFC8040 step 2
[transportpce.git] / tests / transportpce_tests / 1.2.1 / test05_olm.py
index e8299ea0b2990d35c037dbcbf61cab9241532dd2..8684cfc746bafa718ca5ca0b92aa0f8ef423194a 100644 (file)
@@ -20,7 +20,6 @@ import sys
 sys.path.append('transportpce_tests/common/')
 # pylint: disable=wrong-import-position
 # pylint: disable=import-error
-import test_utils  # nopep8
 import test_utils_rfc8040  # nopep8
 
 
@@ -90,114 +89,88 @@ class TransportOlmTesting(unittest.TestCase):
         self.assertEqual(response.status_code, requests.codes.ok)
 
     def test_09_create_OTS_ROADMA(self):
-        response = test_utils.create_ots_oms_request("ROADMA01", "DEG1-TTP-TXRX")
+        response = test_utils_rfc8040.device_renderer_create_ots_oms_request('ROADMA01', 'DEG1-TTP-TXRX')
         self.assertEqual(response.status_code, requests.codes.ok)
-        res = response.json()
-        self.assertIn('Interfaces OTS-DEG1-TTP-TXRX - OMS-DEG1-TTP-TXRX successfully created on node ROADMA01',
-                      res["output"]["result"])
 
     def test_10_create_OTS_ROADMC(self):
-        response = test_utils.create_ots_oms_request("ROADMC01", "DEG2-TTP-TXRX")
+        response = test_utils_rfc8040.device_renderer_create_ots_oms_request('ROADMC01', 'DEG2-TTP-TXRX')
         self.assertEqual(response.status_code, requests.codes.ok)
-        res = response.json()
-        self.assertIn('Interfaces OTS-DEG2-TTP-TXRX - OMS-DEG2-TTP-TXRX successfully created on node ROADMC01',
-                      res["output"]["result"])
 
     def test_11_get_PM_ROADMA(self):
-        url = "{}/operations/transportpce-olm:get-pm"
-        data = {
-            "input": {
-                "node-id": "ROADMA01",
-                "resource-type": "interface",
-                "granularity": "15min",
-                "resource-identifier": {
-                    "resource-name": "OTS-DEG1-TTP-TXRX"
-                }
+        response = test_utils_rfc8040.olm_get_pm_request({
+            'node-id': 'ROADMA01',
+            'resource-type': 'interface',
+            'granularity': '15min',
+            'resource-identifier': {
+                'resource-name': 'OTS-DEG1-TTP-TXRX'
             }
-        }
-        response = test_utils.post_request(url, data)
-        self.assertEqual(response.status_code, requests.codes.ok)
-        res = response.json()
+        })
+        self.assertEqual(response['status_code'], requests.codes.ok)
         self.assertIn({
-            "pmparameter-name": "OpticalPowerOutput",
-            "pmparameter-value": "2.5"
-        }, res["output"]["measurements"])
+            'pmparameter-name': 'OpticalPowerOutput',
+            'pmparameter-value': '2.5'
+        }, response['output']['measurements'])
         self.assertIn({
-            "pmparameter-name": "OpticalReturnLoss",
-            "pmparameter-value": "49.9"
-        }, res["output"]["measurements"])
+            'pmparameter-name': 'OpticalReturnLoss',
+            'pmparameter-value': '49.9'
+        }, response['output']['measurements'])
         self.assertIn({
-            "pmparameter-name": "OpticalPowerInput",
-            "pmparameter-value": "3"
-        }, res["output"]["measurements"])
+            'pmparameter-name': 'OpticalPowerInput',
+            'pmparameter-value': '3'
+        }, response['output']['measurements'])
 
     def test_12_get_PM_ROADMC(self):
-        url = "{}/operations/transportpce-olm:get-pm"
-        data = {
-            "input": {
-                "node-id": "ROADMC01",
-                "resource-type": "interface",
-                "granularity": "15min",
-                "resource-identifier": {
-                    "resource-name": "OTS-DEG2-TTP-TXRX"
-                }
+        response = test_utils_rfc8040.olm_get_pm_request({
+            'node-id': 'ROADMC01',
+            'resource-type': 'interface',
+            'granularity': '15min',
+            'resource-identifier': {
+                'resource-name': 'OTS-DEG2-TTP-TXRX'
             }
-        }
-        response = test_utils.post_request(url, data)
-        self.assertEqual(response.status_code, requests.codes.ok)
-        res = response.json()
+        })
+        self.assertEqual(response['status_code'], requests.codes.ok)
         self.assertIn({
-            "pmparameter-name": "OpticalPowerOutput",
-            "pmparameter-value": "18.1"
-        }, res["output"]["measurements"])
+            'pmparameter-name': 'OpticalPowerOutput',
+            'pmparameter-value': '18.1'
+        }, response['output']['measurements'])
         self.assertIn({
-            "pmparameter-name": "OpticalReturnLoss",
-            "pmparameter-value": "48.8"
-        }, res["output"]["measurements"])
+            'pmparameter-name': 'OpticalReturnLoss',
+            'pmparameter-value': '48.8'
+        }, response['output']['measurements'])
         self.assertIn({
-            "pmparameter-name": "OpticalPowerInput",
-            "pmparameter-value": "-3.2"
-        }, res["output"]["measurements"])
+            'pmparameter-name': 'OpticalPowerInput',
+            'pmparameter-value': '-3.2'
+        }, response['output']['measurements'])
 
     def test_13_calculate_span_loss_base_ROADMA_ROADMC(self):
-        url = "{}/operations/transportpce-olm:calculate-spanloss-base"
-        data = {
-            "input": {
-                "src-type": "link",
-                "link-id": "ROADMA01-DEG1-DEG1-TTP-TXRXtoROADMC01-DEG2-DEG2-TTP-TXRX"
-            }
-        }
-        response = test_utils.post_request(url, data)
-        self.assertEqual(response.status_code, requests.codes.ok)
-        res = response.json()
+        response = test_utils_rfc8040.olm_calculate_spanloss_base_request({
+            'src-type': 'link',
+            'link-id': 'ROADMA01-DEG1-DEG1-TTP-TXRXtoROADMC01-DEG2-DEG2-TTP-TXRX'
+        })
+        self.assertEqual(response['status_code'], requests.codes.ok)
         self.assertIn('Success',
-                      res["output"]["result"])
+                      response['output']['result'])
         self.assertIn({
-            "spanloss": "5.7",
-            "link-id": "ROADMA01-DEG1-DEG1-TTP-TXRXtoROADMC01-DEG2-DEG2-TTP-TXRX"
-        }, res["output"]["spans"])
+            'spanloss': '5.7',
+            'link-id': 'ROADMA01-DEG1-DEG1-TTP-TXRXtoROADMC01-DEG2-DEG2-TTP-TXRX'
+        }, response['output']['spans'])
         time.sleep(5)
 
     def test_14_calculate_span_loss_base_all(self):
-        url = "{}/operations/transportpce-olm:calculate-spanloss-base"
-        data = {
-            "input": {
-                "src-type": "all"
-            }
-        }
-        response = test_utils.post_request(url, data)
-        self.assertEqual(response.status_code, requests.codes.ok)
-        res = response.json()
+        response = test_utils_rfc8040.olm_calculate_spanloss_base_request({
+            'src-type': 'all'
+        })
+        self.assertEqual(response['status_code'], requests.codes.ok)
         self.assertIn('Success',
-                      res["output"]["result"])
+                      response['output']['result'])
         self.assertIn({
-            "spanloss": "15.1",
-            "link-id": "ROADMC01-DEG2-DEG2-TTP-TXRXtoROADMA01-DEG1-DEG1-TTP-TXRX"
-        }, res["output"]["spans"])
+            'spanloss': '15.1',
+            'link-id': 'ROADMC01-DEG2-DEG2-TTP-TXRXtoROADMA01-DEG1-DEG1-TTP-TXRX'
+        }, response['output']['spans'])
         self.assertIn({
-            "spanloss": "5.7",
-            "link-id": "ROADMA01-DEG1-DEG1-TTP-TXRXtoROADMC01-DEG2-DEG2-TTP-TXRX"
-        }, res["output"]["spans"])
+            'spanloss': '5.7',
+            'link-id': 'ROADMA01-DEG1-DEG1-TTP-TXRXtoROADMC01-DEG2-DEG2-TTP-TXRX'
+        }, response['output']['spans'])
         time.sleep(5)
 
     def test_15_get_OTS_DEG1_TTP_TXRX_ROADMA(self):
@@ -271,45 +244,40 @@ class TransportOlmTesting(unittest.TestCase):
         time.sleep(10)
 
     def test_19_service_power_setup_XPDRA_XPDRC(self):
-        url = "{}/operations/transportpce-olm:service-power-setup"
-        data = {
-            "input": {
-                "service-name": "test",
-                "wave-number": 1,
-                "nodes": [
-                    {
-                        "dest-tp": "XPDR1-NETWORK1",
-                        "src-tp": "XPDR1-CLIENT1",
-                        "node-id": "XPDRA01"
-                    },
-                    {
-                        "dest-tp": "DEG1-TTP-TXRX",
-                        "src-tp": "SRG1-PP1-TXRX",
-                        "node-id": "ROADMA01"
-                    },
-                    {
-                        "dest-tp": "SRG1-PP1-TXRX",
-                        "src-tp": "DEG2-TTP-TXRX",
-                        "node-id": "ROADMC01"
-                    },
-                    {
-                        "dest-tp": "XPDR1-CLIENT1",
-                        "src-tp": "XPDR1-NETWORK1",
-                        "node-id": "XPDRC01"
-                    }
-                ],
-                "center-freq": 196.1,
-                "nmc-width": 40,
-                "min-freq": 196.075,
-                "max-freq": 196.125,
-                "lower-spectral-slot-number": 761,
-                "higher-spectral-slot-number": 768
-            }
-        }
-        response = test_utils.post_request(url, data)
-        self.assertEqual(response.status_code, requests.codes.ok)
-        res = response.json()
-        self.assertIn('Success', res["output"]["result"])
+        response = test_utils_rfc8040.olm_service_power_setup_request({
+            'service-name': 'test',
+            'wave-number': 1,
+            'nodes': [
+                {
+                    'dest-tp': 'XPDR1-NETWORK1',
+                    'src-tp': 'XPDR1-CLIENT1',
+                    'node-id': 'XPDRA01'
+                },
+                {
+                    'dest-tp': 'DEG1-TTP-TXRX',
+                    'src-tp': 'SRG1-PP1-TXRX',
+                    'node-id': 'ROADMA01'
+                },
+                {
+                    'dest-tp': 'SRG1-PP1-TXRX',
+                    'src-tp': 'DEG2-TTP-TXRX',
+                    'node-id': 'ROADMC01'
+                },
+                {
+                    'dest-tp': 'XPDR1-CLIENT1',
+                    'src-tp': 'XPDR1-NETWORK1',
+                    'node-id': 'XPDRC01'
+                }
+            ],
+            'center-freq': 196.1,
+            'nmc-width': 40,
+            'min-freq': 196.075,
+            'max-freq': 196.125,
+            'lower-spectral-slot-number': 761,
+            'higher-spectral-slot-number': 768
+        })
+        self.assertEqual(response['status_code'], requests.codes.ok)
+        self.assertIn('Success', response['output']['result'])
 
     def test_20_get_interface_XPDRA_XPDR1_NETWORK1(self):
         response = test_utils_rfc8040.check_node_attribute2_request(
@@ -332,45 +300,40 @@ class TransportOlmTesting(unittest.TestCase):
         self.assertEqual("power", response['roadm-connections'][0]['opticalControlMode'])
 
     def test_23_service_power_setup_XPDRC_XPDRA(self):
-        url = "{}/operations/transportpce-olm:service-power-setup"
-        data = {
-            "input": {
-                "service-name": "test",
-                "wave-number": 1,
-                "nodes": [
-                    {
-                        "dest-tp": "XPDR1-NETWORK1",
-                        "src-tp": "XPDR1-CLIENT1",
-                        "node-id": "XPDRC01"
-                    },
-                    {
-                        "dest-tp": "DEG2-TTP-TXRX",
-                        "src-tp": "SRG1-PP1-TXRX",
-                        "node-id": "ROADMC01"
-                    },
-                    {
-                        "src-tp": "DEG1-TTP-TXRX",
-                        "dest-tp": "SRG1-PP1-TXRX",
-                        "node-id": "ROADMA01"
-                    },
-                    {
-                        "src-tp": "XPDR1-NETWORK1",
-                        "dest-tp": "XPDR1-CLIENT1",
-                        "node-id": "XPDRA01"
-                    }
-                ],
-                "center-freq": 196.1,
-                "nmc-width": 40,
-                "min-freq": 196.075,
-                "max-freq": 196.125,
-                "lower-spectral-slot-number": 761,
-                "higher-spectral-slot-number": 768
-            }
-        }
-        response = test_utils.post_request(url, data)
-        self.assertEqual(response.status_code, requests.codes.ok)
-        res = response.json()
-        self.assertIn('Success', res["output"]["result"])
+        response = test_utils_rfc8040.olm_service_power_setup_request({
+            'service-name': 'test',
+            'wave-number': 1,
+            'nodes': [
+                {
+                    'dest-tp': 'XPDR1-NETWORK1',
+                    'src-tp': 'XPDR1-CLIENT1',
+                    'node-id': 'XPDRC01'
+                },
+                {
+                    'dest-tp': 'DEG2-TTP-TXRX',
+                    'src-tp': 'SRG1-PP1-TXRX',
+                    'node-id': 'ROADMC01'
+                },
+                {
+                    'src-tp': 'DEG1-TTP-TXRX',
+                    'dest-tp': 'SRG1-PP1-TXRX',
+                    'node-id': 'ROADMA01'
+                },
+                {
+                    'src-tp': 'XPDR1-NETWORK1',
+                    'dest-tp': 'XPDR1-CLIENT1',
+                    'node-id': 'XPDRA01'
+                }
+            ],
+            'center-freq': 196.1,
+            'nmc-width': 40,
+            'min-freq': 196.075,
+            'max-freq': 196.125,
+            'lower-spectral-slot-number': 761,
+            'higher-spectral-slot-number': 768
+        })
+        self.assertEqual(response['status_code'], requests.codes.ok)
+        self.assertIn('Success', response['output']['result'])
 
     def test_24_get_interface_XPDRC_XPDR1_NETWORK1(self):
         response = test_utils_rfc8040.check_node_attribute2_request(
@@ -387,46 +350,40 @@ class TransportOlmTesting(unittest.TestCase):
         self.assertEqual(float(response['roadm-connections'][0]['target-output-power']), -0.63)
 
     def test_26_service_power_turndown_XPDRA_XPDRC(self):
-        url = "{}/operations/transportpce-olm:service-power-turndown"
-        data = {
-            "input": {
-                "service-name": "test",
-                "wave-number": 1,
-                "nodes": [
-                    {
-                        "dest-tp": "XPDR1-NETWORK1",
-                        "src-tp": "XPDR1-CLIENT1",
-                        "node-id": "XPDRA01"
-                    },
-                    {
-                        "dest-tp": "DEG1-TTP-TXRX",
-                        "src-tp": "SRG1-PP1-TXRX",
-                        "node-id": "ROADMA01"
-                    },
-                    {
-                        "dest-tp": "SRG1-PP1-TXRX",
-                        "src-tp": "DEG2-TTP-TXRX",
-                        "node-id": "ROADMC01"
-                    },
-                    {
-                        "dest-tp": "XPDR1-CLIENT1",
-                        "src-tp": "XPDR1-NETWORK1",
-                        "node-id": "XPDRC01"
-                    }
-                ],
-                "center-freq": 196.1,
-                "nmc-width": 40,
-                "min-freq": 196.075,
-                "max-freq": 196.125,
-                "lower-spectral-slot-number": 761,
-                "higher-spectral-slot-number": 768
-            }
-        }
-        response = test_utils.post_request(url, data)
-        print(response.json())
-        self.assertEqual(response.status_code, requests.codes.ok)
-        res = response.json()
-        self.assertIn('Success', res["output"]["result"])
+        response = test_utils_rfc8040.olm_service_power_turndown_request({
+            'service-name': 'test',
+            'wave-number': 1,
+            'nodes': [
+                {
+                    'dest-tp': 'XPDR1-NETWORK1',
+                    'src-tp': 'XPDR1-CLIENT1',
+                    'node-id': 'XPDRA01'
+                },
+                {
+                    'dest-tp': 'DEG1-TTP-TXRX',
+                    'src-tp': 'SRG1-PP1-TXRX',
+                    'node-id': 'ROADMA01'
+                },
+                {
+                    'dest-tp': 'SRG1-PP1-TXRX',
+                    'src-tp': 'DEG2-TTP-TXRX',
+                    'node-id': 'ROADMC01'
+                },
+                {
+                    'dest-tp': 'XPDR1-CLIENT1',
+                    'src-tp': 'XPDR1-NETWORK1',
+                    'node-id': 'XPDRC01'
+                }
+            ],
+            'center-freq': 196.1,
+            'nmc-width': 40,
+            'min-freq': 196.075,
+            'max-freq': 196.125,
+            'lower-spectral-slot-number': 761,
+            'higher-spectral-slot-number': 768
+        })
+        self.assertEqual(response['status_code'], requests.codes.ok)
+        self.assertIn('Success', response['output']['result'])
 
     def test_27_get_roadmconnection_ROADMA(self):
         response = test_utils_rfc8040.check_node_attribute_request(
@@ -567,12 +524,10 @@ class TransportOlmTesting(unittest.TestCase):
         self.assertIn(response.status_code, (requests.codes.ok, requests.codes.no_content))
 
     def test_38_calculate_span_loss_current(self):
-        url = "{}/operations/transportpce-olm:calculate-spanloss-current"
-        response = test_utils.post_request(url, None)
-        self.assertEqual(response.status_code, requests.codes.ok)
-        res = response.json()
+        response = test_utils_rfc8040.olm_calculate_spanloss_current_request()
+        self.assertEqual(response['status_code'], requests.codes.ok)
         self.assertIn('Success',
-                      res["output"]["result"])
+                      response["output"]["result"])
         time.sleep(5)
 
     def test_39_rdmA_device_disconnected(self):