Skip to content
Snippets Groups Projects
Commit 8841e3d3 authored by Jorge Moratinos's avatar Jorge Moratinos
Browse files

api status test plan fix

parent 9e450b58
No related branches found
No related tags found
1 merge request!22Resolve "Create Test Suite for apiStatus at documentation"
...@@ -357,7 +357,7 @@ At this documentation you will have all information and related files and exampl ...@@ -357,7 +357,7 @@ At this documentation you will have all information and related files and exampl
**Description**: **Description**:
This test case will check if an invoker subscribed to events **SERVICE_API_AVAILABLE**, **SERVICE_API_UNAVAILABLE** and **SERVICE_API_UPDATE** with ***apiStatusMonitoring*** and **Enhanced_event_report** active, receive SERVICE_API_AVAILABLE in mockserver when api is published by a provider, containing eventDetails, and SERVICE_API_UPDATE after update apiStatus to empty aefIds array qith **ApiStatusMonitoring inactive. This test case will check if an invoker subscribed to events **SERVICE_API_AVAILABLE**, **SERVICE_API_UNAVAILABLE** and **SERVICE_API_UPDATE** with ***apiStatusMonitoring*** and **Enhanced_event_report** active, receive SERVICE_API_AVAILABLE in mockserver when api is published by a provider, containing eventDetails, and SERVICE_API_UPDATE after update apiStatus to empty aefIds array qith **ApiStatusMonitoring** inactive.
**Pre-Conditions**: **Pre-Conditions**:
...@@ -377,7 +377,7 @@ At this documentation you will have all information and related files and exampl ...@@ -377,7 +377,7 @@ At this documentation you will have all information and related files and exampl
1. includes filter by query parameter **aef-id** 1. includes filter by query parameter **aef-id**
6. Update Published API: 6. Update Published API:
1. apiStatus present with empty aefIds array. 1. apiStatus present with empty aefIds array.
2. aipStatusMonitoring feature not active (binary 0 0000 0000 -> string **0**) 2. apiStatusMonitoring feature not active (binary 0 0000 0000 -> string **0**)
**Information of Test**: **Information of Test**:
...@@ -406,7 +406,7 @@ At this documentation you will have all information and related files and exampl ...@@ -406,7 +406,7 @@ At this documentation you will have all information and related files and exampl
* body [service api description] with **service_1** and **service_2** apiNames and realted with aefId1 and aefId2. * body [service api description] with **service_1** and **service_2** apiNames and realted with aefId1 and aefId2.
* supportedFeatures **0** * supportedFeatures **0**
* 2 profiles, one with each aef. * 2 profiles, one with each aef.
* apiStatus not present. * apiStatus present with empty aefIds array.
**Expected Result**: **Expected Result**:
...@@ -434,14 +434,21 @@ At this documentation you will have all information and related files and exampl ...@@ -434,14 +434,21 @@ At this documentation you will have all information and related files and exampl
2. Response body must follow **DiscoveredAPIs** data structure: 2. Response body must follow **DiscoveredAPIs** data structure:
* Check if DiscoveredAPIs contains the API Published previously * Check if DiscoveredAPIs contains the API Published previously
* Check if contains the **apiStatus** with aefId1 * Check if contains the **apiStatus** with aefId1
5. Response to Update published Service API at CCF:
5. Response to Publish request must accomplish:
1. **400 Bad Request**
2. Error Response Body must accomplish with **ProblemDetails** data structure with:
* status 400
* title with message "Bad Request"
* detail with message "Set apiStatus with apiStatusMonitoring feature inactive at supportedFeatures if not allowed".
* cause with message "apiStatus can't be set if apiStatusMonitoring is inactive".
<!-- 5. Response to Update published Service API at CCF:
1. **200 OK** 1. **200 OK**
2. Store response with updated serviceAPIDescription. 2. Store response with updated serviceAPIDescription. -->
6. Mock Server received messages must accomplish: 6. Mock Server received messages must accomplish:
1. **Two Events have been received**. 1. **Three Events have been received**.
2. Validate received events follow **EventNotification** data structure, with **apiIds** in **eventDetail** parameter. 2. Validate received events follow **EventNotification** data structure, with **apiIds** in **eventDetail** parameter.
1. One should be **SERVICE_API_AVAILABLE** apiId of published API with **eventDetails** with apiIds and serviceAPIDescription. 1. One should be **SERVICE_API_AVAILABLE** apiId of published API with **eventDetails** with apiIds and serviceAPIDescription.
2. The other one must be **SERVICE_API_UPDATE** apiId published API with **eventDetails** containing serviceAPIDescription updated.
## -------------------- ## --------------------
...@@ -668,15 +675,15 @@ At this documentation you will have all information and related files and exampl ...@@ -668,15 +675,15 @@ At this documentation you will have all information and related files and exampl
* 2 profiles, one with each aef. * 2 profiles, one with each aef.
* apiStatus with aefId1 inside array * apiStatus with aefId1 inside array
* Use **APF Certificate** * Use **APF Certificate**
5. Request Discover Published APIs: <!-- 5. Request Discover Published APIs:
* Send **GET** to **https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}&aef-id=${aefId}** * Send **GET** to **https://{CAPIF_HOSTNAME}/service-apis/v1/allServiceAPIs?api-invoker-id={apiInvokerId}&aef-id=${aefId}**
* Param api-invoker-id is mandatory * Param api-invoker-id is mandatory
* Use **Invoker Certificate** * Use **Invoker Certificate** -->
6. Update published Service API: <!-- 6. Update published Service API:
* Send **PATCH** to resource URL **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{SERVICE_API_ID}** * Send **PATCH** to resource URL **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{SERVICE_API_ID}**
* Use **APF Certificate** * Use **APF Certificate**
* body [service api description patch] and realted with aefId1 and aefId2. * body [service api description patch] and realted with aefId1 and aefId2.
* apiStatus present with aefId1 and aefId2. * apiStatus present with aefId1 and aefId2. -->
**Expected Result**: **Expected Result**:
...@@ -690,27 +697,24 @@ At this documentation you will have all information and related files and exampl ...@@ -690,27 +697,24 @@ At this documentation you will have all information and related files and exampl
1. **201 Created** 1. **201 Created**
2. The URI of the created resource shall be returned in the "Location" HTTP header, following this structure: **{apiRoot}/capif-events/{apiVersion}/{subscriberId}/subscriptions/{subscriptionId}** 2. The URI of the created resource shall be returned in the "Location" HTTP header, following this structure: **{apiRoot}/capif-events/{apiVersion}/{subscriberId}/subscriptions/{subscriptionId}**
3. Response Body must follow **EventSubscription** data structure. 3. Response Body must follow **EventSubscription** data structure.
3. Response to Publish request must accomplish: 3. Response to Publish request must accomplish:
1. **201 Created** 1. **400 Bad Request**
2. Response Body must follow **ServiceAPIDescription** data structure with: 2. Error Response Body must accomplish with **ProblemDetails** data structure with:
* apiId * status 400
* 2 profiles with: * title with message "Bad Request"
* resourceName resource_1 and aefId1 * detail with message "Set apiStatus with apiStatusMonitoring feature inactive at supportedFeatures if not allowed".
* resourceName resource_2 and aefId2 * cause with message "apiStatus can't be set if apiStatusMonitoring is inactive".
3. Response Header **Location** must be received with URI to new resource created, following this structure: **{apiRoot}/published-apis/v1/{apfId}/service-apis/{serviceApiId}**
4. Response without **"apiStatus"** parameter.
4. Response to Discover Request By Invoker: 4. Response to Discover Request By Invoker:
1. **200 OK** response. 1. **404 Not Found** response.
2. Response body must follow **DiscoveredAPIs** data structure: 2. Error Response Body must accomplish with **ProblemDetails** data structure with:
* Check if DiscoveredAPIs contains the API Published previously * status 404
* Check if contains the **apiStatus** with aefId1 * title with message "Not Found"
5. Response to Patch published Service API at CCF: * detail with message "API Invoker {api_invoker_id} has no API Published that accomplish filter conditions".
1. **200 OK** * cause with message "No API Published accomplish filter conditions".
2. Store response with updated serviceAPIDescription. 5. Mock Server received messages must accomplish:
6. Mock Server received messages must accomplish: 1. **No Events have been received**.
1. **Two Events have been received**.
2. Validate received events follow **EventNotification** data structure, with **apiIds** in **eventDetail** parameter.
1. One should be **SERVICE_API_AVAILABLE** apiId of published API with **eventDetails** with apiIds and serviceAPIDescription.
## Test Case 20: Patch published without aefs available API with apiStatus only aef2 ## Test Case 20: Patch published without aefs available API with apiStatus only aef2
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment