Newer
Older
# Test Plan for CAPIF Api Auditing Service
At this documentation you will have all information and related files and examples of test plan for this API.
## Test Case 1: Get CAPIF Log Entry.
**Test ID**: ***capif_api_auditing-1***
**Description**:
This test case will check that a CAPIF AMF can get log entry to Logging Service
**Pre-Conditions**:
* CAPIF provider is pre-authorised (has valid AMF cert from CAPIF Authority)
* Service exist in CAPIF
* Invoker exist in CAPIF
* Log Entry exist in CAPIF
Jorge Moratinos
committed
**Execution Steps**:
1. Register Provider and Invoker CCF
2. Publish Service
3. Create Log Entry
4. Get Log Entry
**Information of Test**:
1. Perform [provider onboarding], [invoker onboarding]
2. Publish Service API at CCF:
Jorge Moratinos
committed
- Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis**
- body [service api description] with apiName **service_1**
- Use **APF Certificate**
Jorge Moratinos
committed
- Send **POST** to **https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{aefId}/logs**
Jorge Moratinos
committed
- Use **AEF Certificate**
Jorge Moratinos
committed
1. Send **GET** to **https://{CAPIF_HOSTNAME}/logs/v1/apiInvocationLogs?aef-id={aefId}&api-invoker-id={api-invoker-id}**
2. Use **AMF Certificate**
**Expected Result**:
1. Response to Logging Service must accomplish:
1. **200 OK**
2. Response Body must follow **InvocationLog** data structure with:
* aefId
* apiInvokerId
* logs
## Test Case 2: Get CAPIF Log Entry With no Log entry in CAPIF.
**Test ID**: ***capif_api_auditing-2***
**Description**:
This test case will check that a CAPIF AEF can create log entry to Logging Service
**Pre-Conditions**:
* CAPIF provider is pre-authorised (has valid AMF cert from CAPIF Authority)
* Service exist in CAPIF
* Invoker exist in CAPIF
Jorge Moratinos
committed
**Execution Steps**:
1. Register Provider and Invoker CCF
2. Publish Service
3. Get Log Entry
**Information of Test**:
1. Perform [provider onboarding], [invoker onboarding]
2. Publish Service API at CCF:
Jorge Moratinos
committed
- Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis**
- body [service api description] with apiName **service_1**
- Use **APF Certificate**
Jorge Moratinos
committed
3. Get Log:
1. Send **GET** to **https://{CAPIF_HOSTNAME}/logs/v1/apiInvocationLogs?aef-id={aefId}&api-invoker-id={api-invoker-id}**
2. Use **AMF Certificate**
**Expected Result**:
1. Response to Logging Service must accomplish:
1. **404 Not Found**
2. Error Response Body must accomplish with **ProblemDetails** data structure with:
* status 404
* title with message "Not Found Log Entry in CAPIF".
* cause with message "Not Exist Logs with the filters applied".
## Test Case 3: Get CAPIF Log Entry without aef-id and api-invoker-id.
**Test ID**: ***capif_api_auditing-3***
**Description**:
This test case will check that a CAPIF AEF can create log entry to Logging Service
**Pre-Conditions**:
* CAPIF provider is no pre-authorised (has no valid AMF cert from CAPIF Authority)
* Service exist in CAPIF
* Invoker exist in CAPIF
* Log Entry exist in CAPIF
Jorge Moratinos
committed
**Execution Steps**:
1. Register Provider and Invoker CCF
2. Publish Service
3. Create Log Entry
4. Get Log Entry
**Information of Test**:
1. Perform [provider onboarding], [invoker onboarding]
2. Publish Service API at CCF:
Jorge Moratinos
committed
- Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis**
- body [service api description] with apiName **service_1**
- Use **APF Certificate**
Jorge Moratinos
committed
- Send **POST** to **https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{aefId}/logs**
Jorge Moratinos
committed
- Use **AEF Certificate**
Jorge Moratinos
committed
1. Send **GET** to **https://{CAPIF_HOSTNAME}/logs/v1/apiInvocationLogs**
2. Use **AMF Certificate**
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
**Expected Result**:
1. Response to Logging Service 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 "aef_id and api_invoker_id parameters are mandatory".
* cause with message "Mandatory parameters missing".
## Test Case 4: Get CAPIF Log Entry with filtter api-version.
**Test ID**: ***capif_api_auditing-4***
**Description**:
This test case will check that a CAPIF AMF can get log entry to Logging Service
**Pre-Conditions**:
* CAPIF provider is pre-authorised (has valid AMF cert from CAPIF Authority)
* Service exist in CAPIF
* Invoker exist in CAPIF
* Log Entry exist in CAPIF
Jorge Moratinos
committed
**Execution Steps**:
1. Register Provider and Invoker CCF
2. Publish Service
3. Create Log Entry
4. Get Log Entry
**Information of Test**:
1. Perform [provider onboarding], [invoker onboarding]
2. Publish Service API at CCF:
Jorge Moratinos
committed
- Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis**
- body [service api description] with apiName **service_1**
- Use **APF Certificate**
Jorge Moratinos
committed
- Send **POST** to **https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{aefId}/logs**
Jorge Moratinos
committed
- Use **AEF Certificate**
Jorge Moratinos
committed
1. Send **GET** to **https://{CAPIF_HOSTNAME}/logs/v1/apiInvocationLogs?aef-id={aefId}&api-invoker-id={api-invoker-id}&api-version={v1}**
2. Use **AMF Certificate**
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
**Expected Result**:
1. Response to Logging Service must accomplish:
1. **200 OK**
2. Response Body must follow **InvocationLog** data structure with:
* aefId
* apiInvokerId
* logs
## Test Case 5: Get CAPIF Log Entry with filter api-version but not exist in log entry.
**Test ID**: ***capif_api_auditing-4***
**Description**:
This test case will check that a CAPIF AMF can get log entry to Logging Service
**Pre-Conditions**:
* CAPIF provider is pre-authorised (has valid AMF cert from CAPIF Authority)
* Service exist in CAPIF
* Invoker exist in CAPIF
* Log Entry exist in CAPIF
Jorge Moratinos
committed
**Execution Steps**:
1. Register Provider and Invoker CCF
2. Publish Service
3. Create Log Entry
4. Get Log Entry
**Information of Test**:
1. Perform [provider onboarding], [invoker onboarding]
2. Publish Service API at CCF:
Jorge Moratinos
committed
- Send **POST** to ccf_publish_url **https://{CAPIF_HOSTNAME}/published-apis/v1/{apfId}/service-apis**
- body [service api description] with apiName **service_1**
- Use **APF Certificate**
Jorge Moratinos
committed
- Send **POST** to **https://{CAPIF_HOSTNAME}/api-invocation-logs/v1/{aefId}/logs**
Jorge Moratinos
committed
- Use **AEF Certificate**
Jorge Moratinos
committed
1. Send **GET** to **https://{CAPIF_HOSTNAME}/logs/v1/apiInvocationLogs?aef-id={aefId}&api-invoker-id={api-invoker-id}&api-version={v58}**
2. Use **AMF Certificate**
**Expected Result**:
1. Response to Logging Service must accomplish:
1. **404 Not Found**
2. Error Response Body must accomplish with **ProblemDetails** data structure with:
* status 404
* detail with message "Parameters do not match any log entry"
* cause with message "No logs found".
[log entry request body]: ../api_logging_service/invocation_log.json "Log Request Body"
[invoker onboarding]: ../common_operations/README.md#onboard-an-invoker "Invoker Onboarding"
[provider onboarding]: ../common_operations/README.md#register-a-provider "Provider Onboarding"