Outsource sims DS direct op on CP to test_utils
[transportpce.git] / tests / transportpce_tests / common / test_utils.py
index 1272df7703bcd74aec551643beda73a0e8e0f567..cc0604abb6f6c15135eddcd4501b5b35de4b8e47 100644 (file)
@@ -676,3 +676,23 @@ def transportpce_api_rpc_request(api_module: str, rpc: str, payload: dict):
             return_output = res[return_key[RESTCONF_VERSION]]
     return {'status_code': response.status_code,
             'output': return_output}
+
+#
+# simulators datastore operations
+#
+
+
+def sims_update_cp_port(sim: tuple, circuitpack: str, port: str, payload: dict):
+    # pylint: disable=consider-using-f-string
+    url = "{}/config/org-openroadm-device:org-openroadm-device/circuit-packs/{}/ports/{}".format(
+        SIMS[sim]['restconf_baseurl'], circuitpack, port)
+    body = {"ports": [payload]}
+    print(sim)
+    print(url)
+    response = requests.request("PUT",
+                                url,
+                                data=json.dumps(body),
+                                headers=TYPE_APPLICATION_JSON,
+                                auth=(ODL_LOGIN, ODL_PWD),
+                                timeout=REQUEST_TIMEOUT)
+    return response.status_code == requests.codes.ok