Commit 8841e3d3 authored by Jorge Moratinos's avatar Jorge Moratinos
Browse files

api status test plan fix

parent 9e450b58
Loading
Loading
Loading
Loading
+34 −30
Original line number Diff line number Diff line
@@ -357,7 +357,7 @@ At this documentation you will have all information and related files and exampl

**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**:

@@ -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**
  6. Update Published API:
     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**:

@@ -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.
       * supportedFeatures **0**
       * 2 profiles, one with each aef.
       * apiStatus not present.
       * apiStatus present with empty aefIds array.

**Expected Result**:

@@ -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:
        * Check if DiscoveredAPIs contains the API Published previously
          * 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**
     2. Store response with updated serviceAPIDescription.
     2. Store response with updated serviceAPIDescription. -->
  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.
        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
       * 2 profiles, one with each aef.
       * apiStatus with aefId1 inside array
     * 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}**
     * Param api-invoker-id is mandatory
     * Use **Invoker Certificate**
  6. Update published Service API:
     * Use **Invoker Certificate** -->
  <!-- 6. Update published Service API:
     * Send **PATCH** to resource URL **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis/{SERVICE_API_ID}**
     * Use **APF Certificate**
     * 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**:

@@ -690,27 +697,24 @@ At this documentation you will have all information and related files and exampl
     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}**
     3. Response Body must follow **EventSubscription** data structure.

  3. Response to Publish request must accomplish:
     1. **201 Created**
     2. Response Body must follow **ServiceAPIDescription** data structure with:
        * apiId
        * 2 profiles with:
          * resourceName resource_1 and aefId1
          * resourceName resource_2 and aefId2
     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.
     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".

  4. Response to Discover Request By Invoker:
     1. **200 OK** response.
     2. Response body must follow **DiscoveredAPIs** data structure:
        * Check if DiscoveredAPIs contains the API Published previously
          * Check if contains the **apiStatus** with aefId1
  5. Response to Patch published Service API at CCF:
     1. **200 OK**
     2. Store response with updated serviceAPIDescription.
  6. Mock Server received messages must accomplish:
     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.
     1. **404 Not Found** response.
     2. Error Response Body must accomplish with **ProblemDetails** data structure with:
        * status 404
        * title with message "Not Found"
        * detail with message "API Invoker {api_invoker_id} has no API Published that accomplish filter conditions".
        * cause with message "No API Published accomplish filter conditions".
  5. Mock Server received messages must accomplish:
     1. **No Events have been received**.

## Test Case 20: Patch published without aefs available API with apiStatus only aef2