Loading doc/testing/testplan/event_filter/README.md +212 −1 Original line number Diff line number Diff line Loading @@ -2,22 +2,62 @@ At this documentation you will have all information and related files and examples of test plan for this feature. ## Test Case 1: Invoker subscrived to SERVICE_API_AVAILABLE, SERVICE_API_UNAVAILABLE and SERVICE_API_UPDATE events filtered by apiIds ## Test Case 1: Invoker subscribed to SERVICE_API_AVAILABLE, SERVICE_API_UNAVAILABLE and SERVICE_API_UPDATE events filtered by apiIds **Test ID**: ***event_filter-1*** **Additional Tags**: ***mockserver*** **Description**: This test case will check an invoker can subscribe to SERVICE_API events and filter them by apiId. **Pre-Conditions**: * Invoker is previously registered and onboarded. * Two providers registered and with APIs published. * **Mock Server is up and running to receive requests.** * **Mock Server is clean.** **Execution Steps**: 1. Register and onboard ***Invoker*** 2. Register ***Provider 1*** and publish ***service_1*** api: 1. Setup provider with Two AEFs. 2. Publish ***service_1*** with: 1. Two AEFs. (aef_id_1 and aef_id_2) 2. apiStatus empty list. 3. supportedFeatures 020. 3. Register ***Provider 2*** and publish ***service_2*** api: 1. Publish ***service_2*** with: 1. apiStatus with AEF Id (aef2_id_1) 2. supportedFeatures 020 4. Discover APIs by Invoker: 1. filter by aef_id_1 2. Only one api will be obtained, store apiId at api_id. 5. Subscribe to events: 1. Events: ***SERVICE_API_AVAILABLE, SERVICE_API_UNAVAILABLE, SERVICE_API_UPDATE.*** 2. EventFilter: ***apiId, apiId, apiId.*** 3. supportedFeatures: ***C*** 6. Update service_1 api: 1. apiStatus with ***aefIds*** present on ***Provider 1***. 2. SupportedFeatures set to ***20*** 7. Remove Provider 1 8. Remove Provider 2 **Expected Results**: Mock Server received messages must accomplish: 1. **Three Events have been received**. 2. Validate received events follow **EventNotification** data structure, with: 1. **SERVICE_API_AVAILABLE**: 1. EventDetail include serviceAPIDescriptions with same Service API description Modified with apiStatus containing aefIds of provider 1 2. **SERVICE_API_UPDATE**: 1. EventDetail include serviceAPIDescriptions with same Service API description Modified with apiStatus containing aefIds of provider 1 3. **SERVICE_API_UNAVAILABLE** 1. EventDetail include serviceAPIDescriptions with same Service API description Modified with apiStatus containing aefIds of provider 1 --- ## Test Case 2: Invoker subscribed to SERVICE_API_AVAILABLE, SERVICE_API_UNAVAILABLE and SERVICE_API_UPDATE events filtered by not valid filters Loading @@ -27,15 +67,82 @@ At this documentation you will have all information and related files and exampl **Description**: This test case will check all error response related with wrong filtering options when invoker subscribes to SERVICE_API events. **Pre-Conditions**: * Invoker is previously registered and onboarded. * Two providers registered and with APIs published. **Execution Steps**: 1. Register and onboard ***Invoker*** 2. Register ***Provider 1*** and publish ***service_1*** api: 1. Setup provider with Two AEFs. 2. Publish ***service_1*** with: 1. Two AEFs. (aef_id_1 and aef_id_2) 2. apiStatus empty list. 3. supportedFeatures 020. 3. Register ***Provider 2*** and publish ***service_2*** api: 1. Publish ***service_2*** with: 1. apiStatus with AEF Id (aef2_id_1) 2. supportedFeatures 020 4. Discover APIs by Invoker: 1. filter by aef_id_1 2. Only one api will be obtained, store apiId at api_id. 5. Subscribe to events: 1. Events: ***SERVICE_API_AVAILABLE, SERVICE_API_UNAVAILABLE, SERVICE_API_UPDATE.*** 2. EventFilter: ***aefIds, empty, empty.*** 3. supportedFeatures: ***C*** 6. Subscribe to events: 1. Events: ***SERVICE_API_AVAILABLE, SERVICE_API_UNAVAILABLE, SERVICE_API_UPDATE.*** 2. EventFilter: ***empty, aefIds, empty.*** 3. supportedFeatures: ***C*** 7. Subscribe to events: 1. Events: ***SERVICE_API_AVAILABLE, SERVICE_API_UNAVAILABLE, SERVICE_API_UPDATE.*** 2. EventFilter: ***empty, empty, aefIds.*** 3. supportedFeatures: ***C*** 8. Subscribe to events: 1. Events: ***SERVICE_API_AVAILABLE, SERVICE_API_UNAVAILABLE, SERVICE_API_UPDATE.*** 2. EventFilter: ***empty, empty, apiInvokerIds.*** 3. supportedFeatures: ***C*** **Expected Results**: We will receive one error after each Event subscription: 1. Response to first subscription: 1. ***400 Bad Request*** 2. ProblemDetails Body with: 1. title: ***Bad Request*** 2. status: ***400*** 3. detail: ***Bad Param*** 4. cause: ***Invalid eventFilter for event SERVICE_API_AVAILABLE*** 5. invalidParams: ***[{ param:eventFilter, reason: The eventFilter aef_ids for event SERVICE_API_AVAILABLE are not applicable }]*** 2. Response to first subscription: 1. ***400 Bad Request*** 2. ProblemDetails Body with: 1. title: ***Bad Request*** 2. status: ***400*** 3. detail: ***Bad Param*** 4. cause: ***Invalid eventFilter for event SERVICE_API_UNAVAILABLE*** 5. invalidParams: ***[{ param:eventFilter, reason: The eventFilter aef_ids for event SERVICE_API_UNAVAILABLE are not applicable }]*** 3. Response to first subscription: 1. ***400 Bad Request*** 2. ProblemDetails Body with: 1. title: ***Bad Request*** 2. status: ***400*** 3. detail: ***Bad Param*** 4. cause: ***Invalid eventFilter for event SERVICE_API_UPDATE*** 5. invalidParams: ***[{ param:eventFilter, reason: The eventFilter aef_ids for event SERVICE_API_UPDATE are not applicable }]*** 4. Response to first subscription: 1. ***400 Bad Request*** 2. ProblemDetails Body with: 1. title: ***Bad Request*** 2. status: ***400*** 3. detail: ***Bad Param*** 4. cause: ***Invalid eventFilter for event SERVICE_API_UPDATE*** 5. invalidParams: ***[{ param:eventFilter, reason: The eventFilter api_invoker_ids for event SERVICE_API_UPDATE are not applicable }]*** --- ## Test Case 3: Provider subscribed to API_INVOKER_ONBOARDED, API_INVOKER_OFFBOARDED and API_INVOKER_UPDATED events filtered by invokerIds Loading @@ -45,15 +152,49 @@ At this documentation you will have all information and related files and exampl **Description**: This test case will check subcription to all API_INVOKER events by one provider. **Pre-Conditions**: * Provider is previously registered. * **Mock Server is up and running to receive requests.** * **Mock Server is clean.** **Execution Steps**: 1. Register ***Provider 1***. 2. Subscribe to events: 1. Events: ***API_INVOKER_ONBOARDED*** 2. EventFilter: ***No filter.*** 3. supportedFeatures: ***C*** 3. Register and onboard ***Invoker 1*** 4. Register and onboard ***Invoker 2*** 5. Subscribe provider to events: 1. Events: ***API_INVOKER_ONBOARDED, API_INVOKER_OFFBOARDED, API_INVOKER_UPDATED*** 2. EventFilter: ***empty, apiInvokerId1, apiInvokerId2.*** 3. supportedFeatures: ***C*** 6. Update Invoker 1: 1. Setup new notificationDestination at invoker. 7. Update Invoker 2: 1. Setup new notificationDestination at invoker. 8. Remove Invoker 1. 9. Remove Invoker 2. **Expected Results**: Mock Server received messages must accomplish: 1. **Four Events have been received**. 2. Validate received events follow **EventNotification** data structure, with: 1. **API_INVOKER_ONBOARDED**: 1. EventDetail include apiInvokerIds with apiInvokerId of provider 1 2. **API_INVOKER_ONBOARDED**: 1. EventDetail include apiInvokerIds with apiInvokerId of provider 2 3. **API_INVOKER_UPDATED**: 1. EventDetail include apiInvokerIds with apiInvokerId of provider 2 4. **API_INVOKER_OFFBOARDED** 1. EventDetail include apiInvokerIds with apiInvokerId of provider 1 --- ## Test Case 4: Provider subscribed to API_INVOKER_ONBOARDED, API_INVOKER_OFFBOARDED and API_INVOKER_UPDATED events filtered by not valid filters Loading @@ -63,15 +204,68 @@ At this documentation you will have all information and related files and exampl **Description**: This test will check API_INVOKER events subscription by Provider with not valid filters. **Pre-Conditions**: * Provider is previously registered. **Execution Steps**: 1. Register ***Provider 1***. 2. Register and onboard ***Invoker 1*** 3. Register and onboard ***Invoker 2*** 4. Subscribe provider to events: 1. Events: ***API_INVOKER_ONBOARDED, API_INVOKER_OFFBOARDED, API_INVOKER_UPDATED*** 2. EventFilter: ***aefIds, empty, empty.*** 3. supportedFeatures: ***C*** 5. Subscribe provider to events: 1. Events: ***API_INVOKER_ONBOARDED, API_INVOKER_OFFBOARDED, API_INVOKER_UPDATED*** 2. EventFilter: ***empty, aefIds, empty.*** 3. supportedFeatures: ***C*** 6. Subscribe provider to events: 1. Events: ***API_INVOKER_ONBOARDED, API_INVOKER_OFFBOARDED, API_INVOKER_UPDATED*** 2. EventFilter: ***empty, empty, aefIds.*** 3. supportedFeatures: ***C*** 7. Subscribe provider to events: 1. Events: ***API_INVOKER_ONBOARDED, API_INVOKER_OFFBOARDED, API_INVOKER_UPDATED*** 2. EventFilter: ***empty, empty, apiIds.*** 3. supportedFeatures: ***C*** **Expected Results**: 1. Response to first subscription: 1. ***400 Bad Request*** 2. ProblemDetails Body with: 1. title: ***Bad Request*** 2. status: ***400*** 3. detail: ***Bad Param*** 4. cause: ***Invalid eventFilter for event API_INVOKER_ONBOARDED*** 5. invalidParams: ***[{ param:eventFilter, reason: The eventFilter aef_ids for event API_INVOKER_ONBOARDED are not applicable }]*** 2. Response to second subscription: 1. ***400 Bad Request*** 2. ProblemDetails Body with: 1. title: ***Bad Request*** 2. status: ***400*** 3. detail: ***Bad Param*** 4. cause: ***Invalid eventFilter for event API_INVOKER_OFFBOARDED*** 5. invalidParams: ***[{ param:eventFilter, reason: The eventFilter aef_ids for event API_INVOKER_OFFBOARDED are not applicable }]*** 3. Response to third subscription: 1. ***400 Bad Request*** 2. ProblemDetails Body with: 1. title: ***Bad Request*** 2. status: ***400*** 3. detail: ***Bad Param*** 4. cause: ***Invalid eventFilter for event API_INVOKER_UPDATED*** 5. invalidParams: ***[{ param:eventFilter, reason: The eventFilter aef_ids for event API_INVOKER_UPDATED are not applicable }]*** 4. Response to fourth subscription: 1. ***400 Bad Request*** 2. ProblemDetails Body with: 1. title: ***Bad Request*** 2. status: ***400*** 3. detail: ***Bad Param*** 4. cause: ***Invalid eventFilter for event API_INVOKER_UPDATED*** 5. invalidParams: ***[{ param:eventFilter, reason: The eventFilter api_ids for event API_INVOKER_UPDATED are not applicable }]*** --- ## Test Case 5: Provider subscribed to ACCESS_CONTROL_POLICY_UPDATE event filtered by only apiId, only invokerId and both Loading Loading @@ -127,6 +321,23 @@ At this documentation you will have all information and related files and exampl **Expected Results**: --- ## Test Case 8: Event Filter present with Enhanced_event_report feature not active. **Test ID**: ***event_filter-8*** **Additional Tags**: **smoke** **Description**: **Pre-Conditions**: **Execution Steps**: **Expected Results**: --- **UNDER DEVELOPMENT** Loading Loading
doc/testing/testplan/event_filter/README.md +212 −1 Original line number Diff line number Diff line Loading @@ -2,22 +2,62 @@ At this documentation you will have all information and related files and examples of test plan for this feature. ## Test Case 1: Invoker subscrived to SERVICE_API_AVAILABLE, SERVICE_API_UNAVAILABLE and SERVICE_API_UPDATE events filtered by apiIds ## Test Case 1: Invoker subscribed to SERVICE_API_AVAILABLE, SERVICE_API_UNAVAILABLE and SERVICE_API_UPDATE events filtered by apiIds **Test ID**: ***event_filter-1*** **Additional Tags**: ***mockserver*** **Description**: This test case will check an invoker can subscribe to SERVICE_API events and filter them by apiId. **Pre-Conditions**: * Invoker is previously registered and onboarded. * Two providers registered and with APIs published. * **Mock Server is up and running to receive requests.** * **Mock Server is clean.** **Execution Steps**: 1. Register and onboard ***Invoker*** 2. Register ***Provider 1*** and publish ***service_1*** api: 1. Setup provider with Two AEFs. 2. Publish ***service_1*** with: 1. Two AEFs. (aef_id_1 and aef_id_2) 2. apiStatus empty list. 3. supportedFeatures 020. 3. Register ***Provider 2*** and publish ***service_2*** api: 1. Publish ***service_2*** with: 1. apiStatus with AEF Id (aef2_id_1) 2. supportedFeatures 020 4. Discover APIs by Invoker: 1. filter by aef_id_1 2. Only one api will be obtained, store apiId at api_id. 5. Subscribe to events: 1. Events: ***SERVICE_API_AVAILABLE, SERVICE_API_UNAVAILABLE, SERVICE_API_UPDATE.*** 2. EventFilter: ***apiId, apiId, apiId.*** 3. supportedFeatures: ***C*** 6. Update service_1 api: 1. apiStatus with ***aefIds*** present on ***Provider 1***. 2. SupportedFeatures set to ***20*** 7. Remove Provider 1 8. Remove Provider 2 **Expected Results**: Mock Server received messages must accomplish: 1. **Three Events have been received**. 2. Validate received events follow **EventNotification** data structure, with: 1. **SERVICE_API_AVAILABLE**: 1. EventDetail include serviceAPIDescriptions with same Service API description Modified with apiStatus containing aefIds of provider 1 2. **SERVICE_API_UPDATE**: 1. EventDetail include serviceAPIDescriptions with same Service API description Modified with apiStatus containing aefIds of provider 1 3. **SERVICE_API_UNAVAILABLE** 1. EventDetail include serviceAPIDescriptions with same Service API description Modified with apiStatus containing aefIds of provider 1 --- ## Test Case 2: Invoker subscribed to SERVICE_API_AVAILABLE, SERVICE_API_UNAVAILABLE and SERVICE_API_UPDATE events filtered by not valid filters Loading @@ -27,15 +67,82 @@ At this documentation you will have all information and related files and exampl **Description**: This test case will check all error response related with wrong filtering options when invoker subscribes to SERVICE_API events. **Pre-Conditions**: * Invoker is previously registered and onboarded. * Two providers registered and with APIs published. **Execution Steps**: 1. Register and onboard ***Invoker*** 2. Register ***Provider 1*** and publish ***service_1*** api: 1. Setup provider with Two AEFs. 2. Publish ***service_1*** with: 1. Two AEFs. (aef_id_1 and aef_id_2) 2. apiStatus empty list. 3. supportedFeatures 020. 3. Register ***Provider 2*** and publish ***service_2*** api: 1. Publish ***service_2*** with: 1. apiStatus with AEF Id (aef2_id_1) 2. supportedFeatures 020 4. Discover APIs by Invoker: 1. filter by aef_id_1 2. Only one api will be obtained, store apiId at api_id. 5. Subscribe to events: 1. Events: ***SERVICE_API_AVAILABLE, SERVICE_API_UNAVAILABLE, SERVICE_API_UPDATE.*** 2. EventFilter: ***aefIds, empty, empty.*** 3. supportedFeatures: ***C*** 6. Subscribe to events: 1. Events: ***SERVICE_API_AVAILABLE, SERVICE_API_UNAVAILABLE, SERVICE_API_UPDATE.*** 2. EventFilter: ***empty, aefIds, empty.*** 3. supportedFeatures: ***C*** 7. Subscribe to events: 1. Events: ***SERVICE_API_AVAILABLE, SERVICE_API_UNAVAILABLE, SERVICE_API_UPDATE.*** 2. EventFilter: ***empty, empty, aefIds.*** 3. supportedFeatures: ***C*** 8. Subscribe to events: 1. Events: ***SERVICE_API_AVAILABLE, SERVICE_API_UNAVAILABLE, SERVICE_API_UPDATE.*** 2. EventFilter: ***empty, empty, apiInvokerIds.*** 3. supportedFeatures: ***C*** **Expected Results**: We will receive one error after each Event subscription: 1. Response to first subscription: 1. ***400 Bad Request*** 2. ProblemDetails Body with: 1. title: ***Bad Request*** 2. status: ***400*** 3. detail: ***Bad Param*** 4. cause: ***Invalid eventFilter for event SERVICE_API_AVAILABLE*** 5. invalidParams: ***[{ param:eventFilter, reason: The eventFilter aef_ids for event SERVICE_API_AVAILABLE are not applicable }]*** 2. Response to first subscription: 1. ***400 Bad Request*** 2. ProblemDetails Body with: 1. title: ***Bad Request*** 2. status: ***400*** 3. detail: ***Bad Param*** 4. cause: ***Invalid eventFilter for event SERVICE_API_UNAVAILABLE*** 5. invalidParams: ***[{ param:eventFilter, reason: The eventFilter aef_ids for event SERVICE_API_UNAVAILABLE are not applicable }]*** 3. Response to first subscription: 1. ***400 Bad Request*** 2. ProblemDetails Body with: 1. title: ***Bad Request*** 2. status: ***400*** 3. detail: ***Bad Param*** 4. cause: ***Invalid eventFilter for event SERVICE_API_UPDATE*** 5. invalidParams: ***[{ param:eventFilter, reason: The eventFilter aef_ids for event SERVICE_API_UPDATE are not applicable }]*** 4. Response to first subscription: 1. ***400 Bad Request*** 2. ProblemDetails Body with: 1. title: ***Bad Request*** 2. status: ***400*** 3. detail: ***Bad Param*** 4. cause: ***Invalid eventFilter for event SERVICE_API_UPDATE*** 5. invalidParams: ***[{ param:eventFilter, reason: The eventFilter api_invoker_ids for event SERVICE_API_UPDATE are not applicable }]*** --- ## Test Case 3: Provider subscribed to API_INVOKER_ONBOARDED, API_INVOKER_OFFBOARDED and API_INVOKER_UPDATED events filtered by invokerIds Loading @@ -45,15 +152,49 @@ At this documentation you will have all information and related files and exampl **Description**: This test case will check subcription to all API_INVOKER events by one provider. **Pre-Conditions**: * Provider is previously registered. * **Mock Server is up and running to receive requests.** * **Mock Server is clean.** **Execution Steps**: 1. Register ***Provider 1***. 2. Subscribe to events: 1. Events: ***API_INVOKER_ONBOARDED*** 2. EventFilter: ***No filter.*** 3. supportedFeatures: ***C*** 3. Register and onboard ***Invoker 1*** 4. Register and onboard ***Invoker 2*** 5. Subscribe provider to events: 1. Events: ***API_INVOKER_ONBOARDED, API_INVOKER_OFFBOARDED, API_INVOKER_UPDATED*** 2. EventFilter: ***empty, apiInvokerId1, apiInvokerId2.*** 3. supportedFeatures: ***C*** 6. Update Invoker 1: 1. Setup new notificationDestination at invoker. 7. Update Invoker 2: 1. Setup new notificationDestination at invoker. 8. Remove Invoker 1. 9. Remove Invoker 2. **Expected Results**: Mock Server received messages must accomplish: 1. **Four Events have been received**. 2. Validate received events follow **EventNotification** data structure, with: 1. **API_INVOKER_ONBOARDED**: 1. EventDetail include apiInvokerIds with apiInvokerId of provider 1 2. **API_INVOKER_ONBOARDED**: 1. EventDetail include apiInvokerIds with apiInvokerId of provider 2 3. **API_INVOKER_UPDATED**: 1. EventDetail include apiInvokerIds with apiInvokerId of provider 2 4. **API_INVOKER_OFFBOARDED** 1. EventDetail include apiInvokerIds with apiInvokerId of provider 1 --- ## Test Case 4: Provider subscribed to API_INVOKER_ONBOARDED, API_INVOKER_OFFBOARDED and API_INVOKER_UPDATED events filtered by not valid filters Loading @@ -63,15 +204,68 @@ At this documentation you will have all information and related files and exampl **Description**: This test will check API_INVOKER events subscription by Provider with not valid filters. **Pre-Conditions**: * Provider is previously registered. **Execution Steps**: 1. Register ***Provider 1***. 2. Register and onboard ***Invoker 1*** 3. Register and onboard ***Invoker 2*** 4. Subscribe provider to events: 1. Events: ***API_INVOKER_ONBOARDED, API_INVOKER_OFFBOARDED, API_INVOKER_UPDATED*** 2. EventFilter: ***aefIds, empty, empty.*** 3. supportedFeatures: ***C*** 5. Subscribe provider to events: 1. Events: ***API_INVOKER_ONBOARDED, API_INVOKER_OFFBOARDED, API_INVOKER_UPDATED*** 2. EventFilter: ***empty, aefIds, empty.*** 3. supportedFeatures: ***C*** 6. Subscribe provider to events: 1. Events: ***API_INVOKER_ONBOARDED, API_INVOKER_OFFBOARDED, API_INVOKER_UPDATED*** 2. EventFilter: ***empty, empty, aefIds.*** 3. supportedFeatures: ***C*** 7. Subscribe provider to events: 1. Events: ***API_INVOKER_ONBOARDED, API_INVOKER_OFFBOARDED, API_INVOKER_UPDATED*** 2. EventFilter: ***empty, empty, apiIds.*** 3. supportedFeatures: ***C*** **Expected Results**: 1. Response to first subscription: 1. ***400 Bad Request*** 2. ProblemDetails Body with: 1. title: ***Bad Request*** 2. status: ***400*** 3. detail: ***Bad Param*** 4. cause: ***Invalid eventFilter for event API_INVOKER_ONBOARDED*** 5. invalidParams: ***[{ param:eventFilter, reason: The eventFilter aef_ids for event API_INVOKER_ONBOARDED are not applicable }]*** 2. Response to second subscription: 1. ***400 Bad Request*** 2. ProblemDetails Body with: 1. title: ***Bad Request*** 2. status: ***400*** 3. detail: ***Bad Param*** 4. cause: ***Invalid eventFilter for event API_INVOKER_OFFBOARDED*** 5. invalidParams: ***[{ param:eventFilter, reason: The eventFilter aef_ids for event API_INVOKER_OFFBOARDED are not applicable }]*** 3. Response to third subscription: 1. ***400 Bad Request*** 2. ProblemDetails Body with: 1. title: ***Bad Request*** 2. status: ***400*** 3. detail: ***Bad Param*** 4. cause: ***Invalid eventFilter for event API_INVOKER_UPDATED*** 5. invalidParams: ***[{ param:eventFilter, reason: The eventFilter aef_ids for event API_INVOKER_UPDATED are not applicable }]*** 4. Response to fourth subscription: 1. ***400 Bad Request*** 2. ProblemDetails Body with: 1. title: ***Bad Request*** 2. status: ***400*** 3. detail: ***Bad Param*** 4. cause: ***Invalid eventFilter for event API_INVOKER_UPDATED*** 5. invalidParams: ***[{ param:eventFilter, reason: The eventFilter api_ids for event API_INVOKER_UPDATED are not applicable }]*** --- ## Test Case 5: Provider subscribed to ACCESS_CONTROL_POLICY_UPDATE event filtered by only apiId, only invokerId and both Loading Loading @@ -127,6 +321,23 @@ At this documentation you will have all information and related files and exampl **Expected Results**: --- ## Test Case 8: Event Filter present with Enhanced_event_report feature not active. **Test ID**: ***event_filter-8*** **Additional Tags**: **smoke** **Description**: **Pre-Conditions**: **Execution Steps**: **Expected Results**: --- **UNDER DEVELOPMENT** Loading