From: Allain Legacy Date: Wed, 14 May 2025 13:45:39 +0000 (-0400) Subject: Allow optional subscription callback verification X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=commitdiff_plain;h=e4541bf2695c92fc78afc3e5fb615886b691aedf;p=it%2Ftest.git Allow optional subscription callback verification This allows optional control over whether to expect that the O2 application performs a reachability check on the subscriber's callback URL. Change-Id: I84995d678f4f1b1bdcc065f96e438b4723f8af19 Signed-off-by: Allain Legacy --- diff --git a/test_scripts/O2IMS_Compliance_Test/mock.sh b/test_scripts/O2IMS_Compliance_Test/mock.sh index fd2f6ed..526d842 100644 --- a/test_scripts/O2IMS_Compliance_Test/mock.sh +++ b/test_scripts/O2IMS_Compliance_Test/mock.sh @@ -59,6 +59,22 @@ O2IMS_INVENTORY_OBSERVER="{ \"priority\" : 10 }" +O2IMS_INVENTORY_OBSERVER_REACHABILITY="{ + \"id\": \"mock_smo_inventory_change_notification_endpoint_registration\", + \"httpRequest\" : { + \"path\" : \"/mock_smo/v1/o2ims_inventory_observer\", + \"method\":\"GET\" + }, + \"httpResponse\" : { + \"statusCode\": 204, + \"body\" : { + \"status\": 204, + \"result\": \"this is mocked inventory change notification callback\" + } + }, + \"priority\" : 10 +}" + O2IMS_ALARM_OBSERVER="{ \"id\": \"mock_smo_alarm_notification_endpoint_registration\", \"httpRequest\" : { @@ -75,9 +91,25 @@ O2IMS_ALARM_OBSERVER="{ \"priority\" : 10 }" +O2IMS_ALARM_OBSERVER_REACHABILITY="{ + \"id\": \"mock_smo_alarm_notification_endpoint_registration\", + \"httpRequest\" : { + \"path\" : \"/mock_smo/v1/o2ims_alarm_observer\", + \"method\":\"GET\" + }, + \"httpResponse\" : { + \"statusCode\": 204, + \"body\" : { + \"status\": 204, + \"result\": \"Welcome to mocked smo server alarm notification endpoint\" + } + }, + \"priority\" : 10 +}" + curl -s -k -X PUT $SMO_ENDPOINT/expectation --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ --d "${VALID_CLOUD_OBSERVER}" +-d "${VALID_CLOUD_OBSERVER}" curl -s -k -X PUT $SMO_ENDPOINT/expectation --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ @@ -87,9 +119,16 @@ curl -s -k -X PUT $SMO_ENDPOINT/expectation --header 'Content-Type: application --header 'Accept: application/json' \ -d "${O2IMS_INVENTORY_OBSERVER}" +curl -s -k -X PUT $SMO_ENDPOINT/expectation --header 'Content-Type: application/json' \ +--header 'Accept: application/json' \ +-d "${O2IMS_INVENTORY_OBSERVER_REACHABILITY}" curl -s -k -X PUT $SMO_ENDPOINT/expectation --header 'Content-Type: application/json' \ --header 'Accept: application/json' \ -d "${O2IMS_ALARM_OBSERVER}" +curl -s -k -X PUT $SMO_ENDPOINT/expectation --header 'Content-Type: application/json' \ +--header 'Accept: application/json' \ +-d "${O2IMS_ALARM_OBSERVER_REACHABILITY}" + exit diff --git a/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/smo_server_mock.robot b/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/smo_server_mock.robot index c378176..e080f24 100644 --- a/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/smo_server_mock.robot +++ b/test_scripts/O2IMS_Compliance_Test/o2ims_compliance/smo_server_mock.robot @@ -56,4 +56,11 @@ SMO called by IMS verification Set Headers {"Content-Type": "application/json"} ${res} put ${SMO_VERIFY_URL} ${args} log ${res} level=DEBUG - Integer response status 406 + # Whether the O-Cloud performs a reachability check (i.e., ETSI GS NFV-SOL 015 V1.1.1, section 5.9) or not is + # optional; therefore, here we provide the ability to override the verification based on the support provided by + # the O-Cloud. + IF ${ocloud.oran_o2_app.expect_callback_verify} + Integer response status 202 + ELSE + Integer response status 406 + END diff --git a/test_scripts/O2IMS_Compliance_Test/test_configs.yaml b/test_scripts/O2IMS_Compliance_Test/test_configs.yaml index 49d10e2..f969ad2 100644 --- a/test_scripts/O2IMS_Compliance_Test/test_configs.yaml +++ b/test_scripts/O2IMS_Compliance_Test/test_configs.yaml @@ -6,7 +6,7 @@ ocloud: username: username password: passwd openrc: /etc/platform/openrc - #oran_o2_ims_info + #oran_o2_ims_info oran_o2_app: g_location_id: testlocation_1 g_ocloud_id: 18f2dc90-b375-47dd-b8dc-ae80072e6cdb @@ -14,6 +14,7 @@ ocloud: deploymentmanager_name: put_deploymentmanager_name_here resourcetype_name: put_resourcetype_name_here resource_description_substring: put_resource_description_substring_here + expect_callback_verify: False api: host: 192.168.112.15