コード例 #1
0
    def test_04_check_tapi_topos(self):
        url = "{}/operations/tapi-topology:get-topology-details"
        data = {
            "tapi-topology:input": {
                "tapi-topology:topology-id-or-name": "Transponder 100GE"
            }
        }
        response = test_utils.post_request(url, data)
        self.assertEqual(response.status_code, requests.codes.ok,
                         test_utils.CODE_SHOULD_BE_200)
        res = response.json()
        self.assertEqual(len(res["output"]["topology"]["node"]), 1,
                         'Topology should contain 1 node')
        self.assertNotIn("link", res["output"]["topology"],
                         'Topology should contain no link')

        url = "{}/operations/tapi-topology:get-topology-details"
        data = {
            "tapi-topology:input": {
                "tapi-topology:topology-id-or-name":
                "T0 - Multi-layer topology"
            }
        }
        response = test_utils.post_request(url, data)
        self.assertEqual(response.status_code, requests.codes.ok,
                         test_utils.CODE_SHOULD_BE_200)
        res = response.json()
        self.assertEqual(len(res["output"]["topology"]["node"]), 1,
                         'Topology should contain 1 node')
        self.assertNotIn("link", res["output"]["topology"],
                         'Topology should contain no link')
コード例 #2
0
 def test_18_check_tapi_topology_T100G(self):
     url = "{}/operations/tapi-topology:get-topology-details"
     data = {
         "tapi-topology:input": {
             "tapi-topology:topology-id-or-name": "Transponder 100GE"
         }
     }
     response = test_utils.post_request(url, data)
     self.assertEqual(response.status_code, requests.codes.ok,
                      test_utils.CODE_SHOULD_BE_200)
     res = response.json()
     self.assertEqual(
         2,
         len(res["output"]["topology"]["node"][0]["owned-node-edge-point"]),
         'Node should contain 2 owned-node-edge-points')
     self.assertEqual(
         "XPDR-C1-XPDR1+DSR+XPDR1-CLIENT1", res["output"]["topology"]
         ["node"][0]["owned-node-edge-point"][0]["name"][0]["value"],
         'name of owned-node-edge-points should be XPDR-C1-XPDR1+DSR+XPDR1-CLIENT1'
     )
     self.assertEqual(
         "XPDR-A1-XPDR1+DSR+XPDR1-CLIENT1", res["output"]["topology"]
         ["node"][0]["owned-node-edge-point"][1]["name"][0]["value"],
         'name of owned-node-edge-points should be XPDR-A1-XPDR1+DSR+XPDR1-CLIENT1'
     )
コード例 #3
0
    def test_10_check_tapi_topos(self):
        self.test_01_get_tapi_topology_T100G()

        url = "{}/operations/tapi-topology:get-topology-details"
        data = {
            "tapi-topology:input": {
                "tapi-topology:topology-id-or-name":
                "T0 - Multi-layer topology"
            }
        }
        response = test_utils.post_request(url, data)
        self.assertEqual(response.status_code, requests.codes.ok,
                         test_utils.CODE_SHOULD_BE_200)
        res = response.json()
        self.assertEqual(1, len(res["output"]["topology"]["node"]),
                         'Topology should contain 1 node')
        self.assertNotIn("link", res["output"]["topology"],
                         'Topology should contain no link')
        self.assertEqual(
            "ROADM-infra",
            res["output"]["topology"]["node"][0]["name"][0]["value"],
            'node name should be: ROADM-infra')
        self.assertIn(
            "PHOTONIC_MEDIA",
            res["output"]["topology"]["node"][0]["layer-protocol-name"],
            'Node layer protocol should contain PHOTONIC_MEDIA')
        self.assertEqual(
            1, len(res["output"]["topology"]["node"][0]["node-rule-group"]),
            'node should contain 1 node rule group')
コード例 #4
0
 def test_01_get_tapi_topology_T100G(self):
     url = "{}/operations/tapi-topology:get-topology-details"
     data = {
         "tapi-topology:input": {
             "tapi-topology:topology-id-or-name": "Transponder 100GE"
         }
     }
     response = test_utils.post_request(url, data)
     self.assertEqual(response.status_code, requests.codes.ok,
                      test_utils.CODE_SHOULD_BE_200)
     res = response.json()
     self.assertEqual(len(res["output"]["topology"]["node"]), 1,
                      'Topology should contain 1 node')
     self.assertNotIn("link", res["output"]["topology"],
                      'Topology should contain no link')
     self.assertNotIn("owned-node-edge-point",
                      res["output"]["topology"]["node"][0],
                      'Node should contain no owned-node-edge-points')
     self.assertEqual(
         "Tpdr100g over WDM node",
         res["output"]["topology"]["node"][0]["name"][0]["value"],
         'node name should be: Tpdr100g over WDM node')
     self.assertIn(
         "ETH", res["output"]["topology"]["node"][0]["layer-protocol-name"],
         'Node layer protocol should contain ETH')
     self.assertEqual(
         1, len(res["output"]["topology"]["node"][0]["node-rule-group"]),
         'node should contain 1 node rule group')
コード例 #5
0
ファイル: test_olm.py プロジェクト: agedwards123/transportpce
 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.post_request(url, data)
     self.assertEqual(response.status_code, requests.codes.ok)
     res = response.json()
     self.assertIn({
         "pmparameter-name": "OpticalPowerOutput",
         "pmparameter-value": "18.1"
     }, res["output"]["measurements"])
     self.assertIn({
         "pmparameter-name": "OpticalReturnLoss",
         "pmparameter-value": "48.8"
     }, res["output"]["measurements"])
     self.assertIn({
         "pmparameter-name": "OpticalPowerInput",
         "pmparameter-value": "-3.2"
     }, res["output"]["measurements"])
コード例 #6
0
ファイル: test_olm.py プロジェクト: agedwards123/transportpce
 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()
     self.assertIn('Success',
                   res["output"]["result"])
     time.sleep(5)
コード例 #7
0
 def test_17_fail_path_computation(self):
     response = test_utils.post_request(test_utils.URL_PATH_COMPUTATION_REQUEST,
                                        {"input": {"service-handler-header": {"request-id": "request-1"}}})
     self.assertEqual(response.status_code, requests.codes.ok)
     res = response.json()
     self.assertIn('Service Name is not set',
                   res['output']['configuration-response-common']['response-message'])
     time.sleep(2)
コード例 #8
0
 def test_12_connect_roadmc_pp2_to_xpdrc_n2(self):
     url = "{}/operations/transportpce-networkutils:init-rdm-xpdr-links".format(
         RESTCONF_BASE_URL)
     data = test_utils.generate_link_data("XPDR-C1", "1", "2", "ROADM-C1",
                                          "1", "SRG1-PP2-TXRX")
     response = test_utils.post_request(url, data, 'admin', 'admin')
     self.assertEqual(response.status_code, requests.codes.ok,
                      CODE_SHOULD_BE_200)  # pylint: disable=no-member
     res = response.json()
     self.assertIn('Roadm Xponder links created successfully',
                   res["output"]["result"], CREATED_SUCCESSFULLY)
     time.sleep(2)
コード例 #9
0
 def test_34_check_tapi_topology_T0(self):
     url = "{}/operations/tapi-topology:get-topology-details"
     data = {
         "tapi-topology:input": {
             "tapi-topology:topology-id-or-name":
             "T0 - Multi-layer topology"
         }
     }
     response = test_utils.post_request(url, data)
     self.assertEqual(response.status_code, requests.codes.ok,
                      test_utils.CODE_SHOULD_BE_200)
     res = response.json()
     nodes = res["output"]["topology"]["node"]
     links = res["output"]["topology"]["link"]
     self.assertEqual(9, len(nodes), 'Topology should contain 9 nodes')
     self.assertEqual(10, len(links), 'Topology should contain 10 links')
     self.assertEqual(
         4,
         count_object_with_double_key(links, "name", "value-name",
                                      "transitional link name"),
         'Topology should contain 4 transitional links')
     self.assertEqual(
         4,
         count_object_with_double_key(links, "name", "value-name",
                                      "OMS link name"),
         'Topology should contain 4 oms links')
     self.assertEqual(
         2,
         count_object_with_double_key(links, "name", "value-name",
                                      "otn link name"),
         'Topology should contain 2 otn links')
     for link in links:
         if link["name"][0][
                 "value"] == "OTU4-SPDR-SA1-XPDR1-XPDR1-NETWORK1toSPDR-SC1-XPDR1-XPDR1-NETWORK1":
             self.assertEqual(
                 0, link["available-capacity"]["total-size"]["value"],
                 'OTU4 link should have an available capacity of 0 Mbps')
         elif link["name"][0][
                 "value"] == "ODU4-SPDR-SA1-XPDR1-XPDR1-NETWORK1toSPDR-SC1-XPDR1-XPDR1-NETWORK1":
             self.assertEqual(
                 100000, link["available-capacity"]["total-size"]["value"],
                 'ODU4 link should have an available capacity of 100 000 Mbps'
             )
         elif link["name"][0]["value-name"] == "transitional link name":
             self.assertEqual(
                 100, link["available-capacity"]["total-size"]["value"],
                 'link should have an available capacity of 100 Gbps')
         self.assertEqual(2, len(link["node-edge-point"]),
                          'link should have 2 neps')
コード例 #10
0
    def test_13_get_tapi_openroadm_topology(self):
        url = "{}/operations/tapi-topology:get-topology-details".format(
            RESTCONF_BASE_URL)
        data = {
            "tapi-topology:input": {
                "tapi-topology:topology-id-or-name": "openroadm-topology"
            }
        }

        response = test_utils.post_request(url, data, 'admin', 'admin')
        self.assertEqual(response.status_code, requests.codes.ok,
                         CODE_SHOULD_BE_200)  # pylint: disable=no-member
        res = response.json()
        self.assertEqual(len(res["output"]["topology"]["node"]), 1,
                         'There should be 1 node')
        self.assertEqual(
            len(res["output"]["topology"]["node"][0]["owned-node-edge-point"]),
            4, 'There should be 4 owned-node-edge-points')
コード例 #11
0
 def test_43_get_tapi_topology_T100G(self):
     url = "{}/operations/tapi-topology:get-topology-details"
     data = {
         "tapi-topology:input": {
             "tapi-topology:topology-id-or-name": "Transponder 100GE"
         }
     }
     response = test_utils.post_request(url, data)
     self.assertEqual(response.status_code, requests.codes.ok,
                      test_utils.CODE_SHOULD_BE_200)
     res = response.json()
     self.assertEqual(len(res["output"]["topology"]["node"]), 1,
                      'Topology should contain 1 node')
     self.assertNotIn("link", res["output"]["topology"],
                      'Topology should contain no link')
     self.assertNotIn("owned-node-edge-point",
                      res["output"]["topology"]["node"][0],
                      'Node should contain no owned-node-edge-points')
コード例 #12
0
ファイル: test_olm.py プロジェクト: agedwards123/transportpce
 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()
     self.assertIn('Success',
                   res["output"]["result"])
     self.assertIn({
         "spanloss": "5.7",
         "link-id": "ROADMA01-DEG1-DEG1-TTP-TXRXtoROADMC01-DEG2-DEG2-TTP-TXRX"
     }, res["output"]["spans"])
     time.sleep(5)
コード例 #13
0
 def test_42_check_tapi_topology_T0(self):
     url = "{}/operations/tapi-topology:get-topology-details"
     data = {
         "tapi-topology:input": {
             "tapi-topology:topology-id-or-name":
             "T0 - Multi-layer topology"
         }
     }
     response = test_utils.post_request(url, data)
     self.assertEqual(response.status_code, requests.codes.ok,
                      test_utils.CODE_SHOULD_BE_200)
     res = response.json()
     nodes = res["output"]["topology"]["node"]
     self.assertEqual(1, len(nodes), 'Topology should contain 1 node')
     self.assertNotIn("link", res["output"]["topology"],
                      'Topology should contain no link')
     self.assertEqual(
         "ROADM-infra",
         res["output"]["topology"]["node"][0]["name"][0]["value"],
         'node name should be: ROADM-infra')
コード例 #14
0
 def test_37_check_tapi_topology_T0(self):
     url = "{}/operations/tapi-topology:get-topology-details"
     data = {
         "tapi-topology:input": {
             "tapi-topology:topology-id-or-name":
             "T0 - Multi-layer topology"
         }
     }
     response = test_utils.post_request(url, data)
     self.assertEqual(response.status_code, requests.codes.ok,
                      test_utils.CODE_SHOULD_BE_200)
     res = response.json()
     nodes = res["output"]["topology"]["node"]
     links = res["output"]["topology"]["link"]
     self.assertEqual(11, len(nodes), 'Topology should contain 11 nodes')
     self.assertEqual(12, len(links), 'Topology should contain 12 links')
     self.assertEqual(
         6,
         count_object_with_double_key(nodes, "name", "value-name",
                                      "otsi node name"),
         'Topology should contain 6 otsi nodes')
     self.assertEqual(
         5,
         count_object_with_double_key(nodes, "name", "value-name",
                                      "dsr/odu node name"),
         'Topology should contain 5 dsr nodes')
     self.assertEqual(
         5,
         count_object_with_double_key(links, "name", "value-name",
                                      "transitional link name"),
         'Topology should contain 5 transitional links')
     self.assertEqual(
         5,
         count_object_with_double_key(links, "name", "value-name",
                                      "OMS link name"),
         'Topology should contain 5 oms links')
     self.assertEqual(
         2,
         count_object_with_double_key(links, "name", "value-name",
                                      "otn link name"),
         'Topology should contain 2 otn links')
コード例 #15
0
ファイル: test_olm.py プロジェクト: agedwards123/transportpce
 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,
             "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"])
コード例 #16
0
 def test_07_device_renderer(self):
     data = {
         "transportpce-device-renderer:input": {
             "transportpce-device-renderer:modulation-format":
             "dp-qpsk",
             "transportpce-device-renderer:operation":
             "create",
             "transportpce-device-renderer:service-name":
             "testNMC-MC",
             "transportpce-device-renderer:wave-number":
             "0",
             "transportpce-device-renderer:center-freq":
             "196.05",
             "transportpce-device-renderer:width":
             "80",
             "transportpce-device-renderer:nodes": [{
                 "transportpce-device-renderer:node-id":
                 "ROADM-D1",
                 "transportpce-device-renderer:src-tp":
                 "SRG1-PP1-TXRX",
                 "transportpce-device-renderer:dest-tp":
                 "DEG1-TTP-TXRX"
             }],
             "transportpce-device-renderer:min-freq":
             196.00625,
             "transportpce-device-renderer:max-freq":
             196.09375,
             "transportpce-device-renderer:lower-spectral-slot-number":
             749,
             "transportpce-device-renderer:higher-spectral-slot-number":
             763
         }
     }
     url = test_utils.RESTCONF_BASE_URL + \
           "/operations/transportpce-device-renderer:service-path"
     response = test_utils.post_request(url, data)
     self.assertEqual(response.status_code, requests.codes.ok)
     res = response.json()
     self.assertIn('Roadm-connection successfully created for nodes',
                   res['output']['result'])
     time.sleep(10)
コード例 #17
0
 def test_40_check_tapi_topology_T0(self):
     url = "{}/operations/tapi-topology:get-topology-details"
     data = {
         "tapi-topology:input": {
             "tapi-topology:topology-id-or-name":
             "T0 - Multi-layer topology"
         }
     }
     response = test_utils.post_request(url, data)
     self.assertEqual(response.status_code, requests.codes.ok,
                      test_utils.CODE_SHOULD_BE_200)
     res = response.json()
     nodes = res["output"]["topology"]["node"]
     links = res["output"]["topology"]["link"]
     self.assertEqual(11, len(nodes), 'Topology should contain 11 nodes')
     self.assertEqual(10, len(links), 'Topology should contain 10 links')
     self.assertEqual(
         0,
         count_object_with_double_key(links, "name", "value-name",
                                      "otn link name"),
         'Topology should contain 0 otn link')
コード例 #18
0
    def test_03_service_create_OTU4(self):
        url = "{}/operations/transportpce-renderer:service-implementation-request"
        data = {
            "transportpce-renderer:input": {
                "transportpce-renderer:service-name": "SPDRA-SPDRC-OTU4-ODU4",
                "transportpce-renderer:connection-type": "infrastructure",
                "transportpce-renderer:service-handler-header": {
                    "transportpce-renderer:request-id": "abcd12-efgh34"
                },
                "transportpce-renderer:service-a-end": {
                    "transportpce-renderer:service-format": "OTU",
                    "transportpce-renderer:otu-service-rate": "org-openroadm-otn-common-types:OTU4",
                    "transportpce-renderer:clli": "nodeSA",
                    "transportpce-renderer:node-id": "SPDR-SA1"

                },
                "transportpce-renderer:service-z-end": {
                    "transportpce-renderer:service-format": "OTU",
                    "transportpce-renderer:otu-service-rate": "org-openroadm-otn-common-types:OTU4",
                    "transportpce-renderer:clli": "nodeSC",
                    "transportpce-renderer:node-id": "SPDR-SC1"
                },
                "transportpce-renderer:path-description": {
                    "aToZ-direction": {
                        "rate": 100,
                        "transportpce-renderer:modulation-format": "dp-qpsk",
                        "aToZ-wavelength-number": 1,
                        "aToZ": [
                            {
                                "id": "0",
                                "resource": {
                                    "tp-node-id": "SPDR-SA1-XPDR1",
                                    "tp-id": ""
                                }
                            },
                            {
                                "id": "1",
                                "resource": {
                                    "tp-node-id": "SPDR-SA1-XPDR1",
                                    "tp-id": "XPDR1-NETWORK1"
                                }
                            },
                            {
                                "id": "2",
                                "resource": {
                                    "tp-node-id": "SPDR-SC1-XPDR1",
                                    "tp-id": "XPDR1-NETWORK1"
                                }
                            },
                            {
                                "id": "3",
                                "resource": {
                                    "tp-node-id": "SPDR-SC1-XPDR1",
                                    "tp-id": ""
                                }
                            }
                        ],
                        "transportpce-renderer:aToZ-min-frequency": 196.075,
                        "transportpce-renderer:aToZ-max-frequency": 196.125
                    },
                    "transportpce-renderer:zToA-direction": {
                        "transportpce-renderer:zToA-wavelength-number": "1",
                        "transportpce-renderer:rate": "100",
                        "transportpce-renderer:modulation-format": "dp-qpsk",
                        "zToA": [
                            {
                                "id": "0",
                                "resource": {
                                    "tp-node-id": "SPDR-SC1-XPDR1",
                                    "tp-id": ""
                                }
                            },
                            {
                                "id": "1",
                                "resource": {
                                    "tp-node-id": "SPDR-SC1-XPDR1",
                                    "tp-id": "XPDR1-NETWORK1"
                                }
                            },
                            {
                                "id": "2",
                                "resource": {
                                    "tp-node-id": "SPDR-SA1-XPDR1",
                                    "tp-id": "XPDR1-NETWORK1"
                                }
                            },
                            {
                                "id": "3",
                                "resource": {
                                    "tp-node-id": "SPDR-SA1-XPDR1",
                                    "tp-id": ""
                                }
                            }
                        ],
                        "transportpce-renderer:zToA-min-frequency": 196.075,
                        "transportpce-renderer:zToA-max-frequency": 196.125
                    }
                }
            }
        }
        response = test_utils.post_request(url, data)
        time.sleep(3)
        print(response.json())
        self.assertEqual(response.status_code, requests.codes.ok)
        res = response.json()
        self.assertIn('Operation Successful',
                      res["output"]["configuration-response-common"]["response-message"])
コード例 #19
0
    def test_14_get_tapi_otn_topology(self):
        url = "{}/operations/tapi-topology:get-topology-details".format(
            RESTCONF_BASE_URL)
        data = {
            "tapi-topology:input": {
                "tapi-topology:topology-id-or-name": "otn-topology"
            }
        }

        response = test_utils.post_request(url, data, 'admin', 'admin')
        self.assertEqual(response.status_code, requests.codes.ok,
                         CODE_SHOULD_BE_200)  # pylint: disable=no-member
        res = response.json()
        self.assertEqual(len(res["output"]["topology"]["node"]), 4,
                         'There should be 4 nodes')
        self.assertEqual(len(res["output"]["topology"]["link"]), 5,
                         'There should be 5 links')
        link_to_check = res["output"]["topology"]["link"][0]
        # get info from first link to do deeper check
        node1_uid = link_to_check["node-edge-point"][0]["node-uuid"]
        node2_uid = link_to_check["node-edge-point"][1]["node-uuid"]
        node_edge_point1_uid = link_to_check["node-edge-point"][0][
            "node-edge-point-uuid"]
        node_edge_point2_uid = link_to_check["node-edge-point"][1][
            "node-edge-point-uuid"]
        # get node associated to link info
        nodes = res["output"]["topology"]["node"]
        node1 = find_object_with_key(nodes, "uuid", node1_uid)
        self.assertIsNotNone(
            node1, 'Node with uuid ' + node1_uid + ' should not be null')
        node2 = find_object_with_key(nodes, "uuid", node2_uid)
        self.assertIsNotNone(
            node2, 'Node with uuid ' + node2_uid + ' should not be null')
        # get edge-point associated to nodes
        node1_edge_point = node1["owned-node-edge-point"]
        node2_edge_point = node2["owned-node-edge-point"]
        node_edge_point1 = find_object_with_key(node1_edge_point, "uuid",
                                                node_edge_point1_uid)
        self.assertIsNotNone(
            node_edge_point1, 'Node edge point  with uuid ' +
            node_edge_point1_uid + 'should not be '
            'null')
        node_edge_point2 = find_object_with_key(node2_edge_point, "uuid",
                                                node_edge_point2_uid)
        self.assertIsNotNone(
            node_edge_point2, 'Node edge point with uuid ' +
            node_edge_point2_uid + 'should not be '
            'null')
        self.assertEqual(len(node_edge_point1["name"]), 1,
                         'There should be 1 name')
        self.assertEqual(len(node_edge_point2["name"]), 1,
                         'There should be 1 name')
        if node_edge_point1["layer-protocol-name"] == 'ODU':
            self.assertIn('NodeEdgePoint_N',
                          node_edge_point1["name"][0]["value-name"],
                          'Value name should be '
                          'NodeEdgePoint_NX')
        elif node_edge_point1["layer-protocol-name"] == 'PHOTONIC_MEDIA':
            self.assertIn('iNodeEdgePoint_',
                          node_edge_point1["name"][0]["value-name"],
                          'Value name should be '
                          'iNodeEdgePoint_X')
        else:
            self.fail('Wrong layer protocol name')

        if node_edge_point2["layer-protocol-name"] == 'ODU':
            self.assertIn('NodeEdgePoint_N',
                          node_edge_point2["name"][0]["value-name"],
                          'Value name should be '
                          'NodeEdgePoint_NX')
        elif node_edge_point2["layer-protocol-name"] == 'PHOTONIC_MEDIA':
            self.assertIn('iNodeEdgePoint_',
                          node_edge_point2["name"][0]["value-name"],
                          'Value name should be '
                          'iNodeEdgePoint_X')
        else:
            self.fail('Wrong layer protocol name')
コード例 #20
0
    def test_11_service_create_10GE(self):
        url = "{}/operations/transportpce-renderer:service-implementation-request"

        data = {
            "transportpce-renderer:input": {
                "transportpce-renderer:service-name": "SPDRA-SPDRC-10G",
                "transportpce-renderer:connection-type": "service",
                "transportpce-renderer:service-handler-header": {
                    "transportpce-renderer:request-id": "abcd12-efgh34"
                },
                "transportpce-renderer:service-a-end": {
                    "transportpce-renderer:service-format": "Ethernet",
                    "transportpce-renderer:service-rate": "10",
                    "transportpce-renderer:clli": "nodeSA",
                    "transportpce-renderer:node-id": "SPDR-SA1"
                },
                "transportpce-renderer:service-z-end": {
                    "transportpce-renderer:service-format": "Ethernet",
                    "transportpce-renderer:service-rate": "10",
                    "transportpce-renderer:clli": "nodeSC",
                    "transportpce-renderer:node-id": "SPDR-SC1"
                },
                "transportpce-renderer:path-description": {
                    "aToZ-direction": {
                        "rate": 10,
                        "trib-port-number": 1,
                        "trib-slot-number": 1,
                        "aToZ": [
                            {
                                "id": "0",
                                "resource": {
                                    "tp-node-id": "SPDR-SA1-XPDR1",
                                    "tp-id": "XPDR1-CLIENT1"

                                }
                            },
                            {
                                "id": "1",
                                "resource": {
                                    "tp-node-id": "SPDR-SA1-XPDR1",
                                    "tp-id": "XPDR1-NETWORK1"
                                }
                            },
                            {
                                "id": "2",
                                "resource": {
                                    "tp-node-id": "SPDR-SC1-XPDR1",
                                    "tp-id": "XPDR1-NETWORK1"
                                }
                            },
                            {
                                "id": "3",
                                "resource": {
                                    "tp-node-id": "SPDR-SC1-XPDR1",
                                    "tp-id": "XPDR1-CLIENT1"
                                }
                            }
                        ]
                    },
                    "transportpce-renderer:zToA-direction": {
                        "rate": "10",
                        "trib-port-number": 1,
                        "trib-slot-number": 1,
                        "zToA": [
                            {
                                "id": "0",
                                "resource": {
                                    "tp-node-id": "SPDR-SC1-XPDR1",
                                    "tp-id": "XPDR1-CLIENT1"
                                }
                            },
                            {
                                "id": "1",
                                "resource": {
                                    "tp-node-id": "SPDR-SC1-XPDR1",
                                    "tp-id": "XPDR1-NETWORK1"
                                }
                            },
                            {
                                "id": "2",
                                "resource": {
                                    "tp-node-id": "SPDR-SA1-XPDR1",
                                    "tp-id": "XPDR1-NETWORK1"
                                }
                            },
                            {
                                "id": "3",
                                "resource": {
                                    "tp-node-id": "SPDR-SA1-XPDR1",
                                    "tp-id": "XPDR1-CLIENT1"

                                }
                            }
                        ]
                    }
                }
            }
        }

        response = test_utils.post_request(url, data)
        time.sleep(3)
        self.assertEqual(response.status_code, requests.codes.ok)
        res = response.json()
        self.assertIn('Operation Successful',
                      res["output"]["configuration-response-common"]
                      ["response-message"])