From 9ed541b786bda7be46a5de7ac12209206fe0ab15 Mon Sep 17 00:00:00 2001 From: bhargavi-ct Date: Tue, 22 Jul 2025 10:57:31 +0530 Subject: [PATCH] Update asb_script for better error handling Signed-off-by: bhargavi-ct --- libs/tip_2x/controller.py | 12 +++++++++++- .../ucentral_gateway/test_gatewayservice.py | 4 +++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/libs/tip_2x/controller.py b/libs/tip_2x/controller.py index c44dd6c2c..d824a26c4 100644 --- a/libs/tip_2x/controller.py +++ b/libs/tip_2x/controller.py @@ -955,7 +955,17 @@ class Controller(ConfigureController): payload = json.dumps(payload) resp = requests.post(uri, data=payload, headers=self.make_headers(), verify=False, timeout=120) logging.info("resp:- " + str(resp)) - resp = resp.json() + # Check if response status is OK (200) + if resp.status_code != 200: + pytest.fail(f"Request to {uri} failed with status code {resp.status_code}: {resp.text}") + # Try parsing JSON + try: + resp = resp.json() + except ValueError: + pytest.fail(f"Response from {uri} is not valid JSON: {resp.text}") + if 'UUID' not in resp: + pytest.fail(f"'UUID' not found in response JSON from {uri}: {resp}") + resp = resp['UUID'] return resp diff --git a/tests/controller_tests/ucentral_gateway/test_gatewayservice.py b/tests/controller_tests/ucentral_gateway/test_gatewayservice.py index 578b0cfc4..34f8d5237 100644 --- a/tests/controller_tests/ucentral_gateway/test_gatewayservice.py +++ b/tests/controller_tests/ucentral_gateway/test_gatewayservice.py @@ -1052,10 +1052,11 @@ class TestUcentralGatewayService(object): "deferred": True, "uri": "" } - resp = resp = get_target_object.controller_library_object.check_restrictions(device_name) + resp = get_target_object.controller_library_object.check_restrictions(device_name) if not resp: logging.info("AP is in not restricted and we can trigger script") uuid = get_target_object.controller_library_object.asb_script(device_name, payload) + logging.info(f"uuid:{uuid}") resp = get_target_object.controller_library_object.get_file(device_name, uuid) assert resp.status_code == 200 else: @@ -1100,6 +1101,7 @@ class TestUcentralGatewayService(object): if resp: logging.info("From GW it's confirmed that AP is restricted now") uuid = get_target_object.controller_library_object.asb_script(device_name, payload) + logging.info(f"uuid:{uuid}") resp = get_target_object.controller_library_object.get_file(device_name, uuid) assert resp.status_code == 200 else: