Newer
Older
# Test Plan for CAPIF Api Provider Management
At this documentation you will have all information and related files and examples of test plan for this API.
## Test Case 1: Register Api Provider
**Test ID**: ***capif_api_provider_management-1***
**Description**:
This test case will check that Api Provider can be registered con CCF
**Pre-Conditions**:
* Provider is pre-authorised (has valid certificate from CAPIF Authority)
**Execution Steps**:
1. Create private and public key for provider and each function to register.
2. Register Provider.
**Information of Test**:
1. Create public and private key at provider for provider itself and each function (apf, aef and amf)
2. Retrieve access_token by User:
* Send **GET** to **https://${CAPIF_REGISTER}:${CAPIF_REGISTER_PORT}/getauth**
* Include basic Auth Header with Admin user/password
* Retrieve **access_token** and the urls needed for next requests from response body [user_getauth_response_body_example]
3. Register Provider:
Jorge Moratinos
committed
* Send **POST** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations**
* body [provider request body]
* Authentication Bearer with access_token
* Store each cert in a file with according name.
**Expected Result**:
1. Register Provider at Provider Management:
1. **201 Created** response.
2. body returned must accomplish **APIProviderEnrolmentDetails** data structure.
3. For each **apiProvFuncs**, we must check:
1. **apiProvFuncId** is set
2. **apiProvCert** under **regInfo** is set properly
Jorge Moratinos
committed
5. Location Header must contain the new resource URL **{apiRoot}/api-provider-management/v1/registrations/{registrationId}**
## Test Case 2: Register Api Provider Already registered
**Test ID**: ***capif_api_provider_management-2***
**Description**:
This test case will check that a Api Provider previously registered cannot be re-registered
**Pre-Conditions**:
* Api Provider was registered previously and there is a {registerId} for his Api Provider in the DB
**Execution Steps**:
1. Create private and public key for provider and each function to register.
2. Register Provider.
3. Re-Register Provider.
**Information of Test**:
1. Create public and private key at provider for provider itself and each function (apf, aef and amf)
2. Retrieve access_token by User:
* Send **GET** to **https://${CAPIF_REGISTER}:${CAPIF_REGISTER_PORT}/getauth**
* Include basic Auth Header with Admin user/password
* Retrieve **access_token** and the urls needed for next requests from response body [user_getauth_response_body_example]
3. Register Provider:
Jorge Moratinos
committed
* Send **POST** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations**
* body [provider request body]
* Authentication Bearer with access_token
* Store each cert in a file with according name.
4. Re-Register Provider:
* Same regSec than Previous registration
**Expected Result**:
1. Re-Register Provider:
1. **403 Forbidden** response.
2. body returned must accomplish **ProblemDetails** data structure, with:
* status 403
* title with message "Forbidden"
* detail with message "Provider already registered".
* cause with message "Identical provider reg sec".
## Test Case 3: Update Registered Api Provider
**Test ID**: ***capif_api_provider_management-3***
**Description**:
This test case will check that a Registered Api Provider can be updated
**Pre-Conditions**:
* Api Provider was registered previously and there is a {registerId} for his Api Provider in the DB
**Execution Steps**:
1. Create private and public key for provider and each function to register.
2. Register Provider
3. Update Provider
**Information of Test**:
1. Create public and private key at provider for provider itself and each function (apf, aef and amf)
2. Retrieve access_token by User:
* Send **GET** to **https://${CAPIF_REGISTER}:${CAPIF_REGISTER_PORT}/getauth**
* Include basic Auth Header with Admin user/password
* Retrieve **access_token** and the urls needed for next requests from response body [user_getauth_response_body_example]
3. Register Provider:
Jorge Moratinos
committed
* Send **POST** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations**
* body [provider request body]
* Authentication Bearer with access_token
* Get Resource URL from Location
4. Update Provider:
Jorge Moratinos
committed
* Send **PUT** to Resource URL returned at registration **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations/{registrationId}**
* body [provider request body] with apiProvDomInfo set to ROBOT_TESTING_MOD
* Use AMF Certificate.
**Expected Result**:
1. Register Provider:
1. **201 Created** response.
2. body returned must accomplish **APIProviderEnrolmentDetails** data structure.
Jorge Moratinos
committed
3. Location Header must contain the new resource URL **{apiRoot}/api-provider-management/v1/registrations/{registrationId}**
2. Update Provider:
1. **200 OK** response.
2. body returned must accomplish **APIProviderEnrolmentDetails** data structure, with:
* apiProvDomInfo set to ROBOT_TESTING_MOD
## Test Case 4: Update Not Registered Api Provider
**Test ID**: ***capif_api_provider_management-4***
**Description**:
This test case will check that a Non-Registered Api Provider cannot be updated
**Pre-Conditions**:
* Api Provider was not registered previously
**Execution Steps**:
1. Register Provider at CCF
2. Update Not Registered Provider
**Information of Test**:
1. Create public and private key at provider for provider itself and each function (apf, aef and amf)
2. Retrieve access_token by User:
* Send **GET** to **https://${CAPIF_REGISTER}:${CAPIF_REGISTER_PORT}/getauth**
* Include basic Auth Header with Admin user/password
* Retrieve **access_token** and the urls needed for next requests from response body [user_getauth_response_body_example]
3. Register Provider:
Jorge Moratinos
committed
* Send **POST** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations**
* body [provider request body]
* Authentication Bearer with access_token
* Store each cert in a file with according name.
4. Update Not Registered Provider:
Jorge Moratinos
committed
* Send **PUT** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations/{API_PROVIDER_NOT_REGISTERED}**
* body [provider request body]
* Use AMF Certificate.
**Expected Result**:
1. Update Not Registered Provider:
1. **404 Not Found** response.
2. body returned must accomplish **ProblemDetails** data structure, with:
* status 404
* title with message "Not Found"
* detail with message "Not Exist Provider Enrolment Details".
Jorge Moratinos
committed
* cause with message "Not found registrations to Send **THIS** api provider details".
## Test Case 5: Partially Update Registered Api Provider
**Test ID**: ***capif_api_provider_management-5***
**Description**:
This test case will check that a Registered Api Provider can be partially updated
**Pre-Conditions**:
* Api Provider was registered previously and there is a {registerId} for his Api Provider in the DB
**Execution Steps**:
1. Register Provider at CCF
2. Register Provider
3. Partial update provider
**Information of Test**:
1. Create public and private key at provider for provider itself and each function (apf, aef and amf)
2. Retrieve access_token by User:
* Send **GET** to **https://${CAPIF_REGISTER}:${CAPIF_REGISTER_PORT}/getauth**
* Include basic Auth Header with Admin user/password
* Retrieve **access_token** and the urls needed for next requests from response body [user_getauth_response_body_example]
3. Register Provider:
Jorge Moratinos
committed
* Send **POST** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations**
* body [provider request body]
* Authentication Bearer with access_token
* Store each cert in a file with according name.
4. Partial update provider:
Jorge Moratinos
committed
* Send **PATCH** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations/{registrationId}**
* body [provider request patch body]
* Use AMF Certificate.
**Expected Result**:
1. Partial update provider at Provider Management:
1. **200 OK** response.
2. body returned must accomplish **APIProviderEnrolmentDetails** data structure, with:
* apiProvDomInfo with "ROBOT_TESTING_MOD"
## Test Case 6: Partially Update Not Registered Api Provider
**Test ID**: ***capif_api_provider_management-6***
**Description**:
This test case will check that a Non-Registered Api Provider cannot be partially updated
**Pre-Conditions**:
* Api Provider was not registered previously
**Execution Steps**:
1. Register Provider at CCF
2. Register Provider
3. Partial update provider
**Information of Test**:
1. Create public and private key at provider for provider itself and each function (apf, aef and amf)
2. Retrieve access_token by User:
* Send **GET** to **https://${CAPIF_REGISTER}:${CAPIF_REGISTER_PORT}/getauth**
* Include basic Auth Header with Admin user/password
* Retrieve **access_token** and the urls needed for next requests from response body [user_getauth_response_body_example]
3. Register Provider:
Jorge Moratinos
committed
* Send **POST** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations**
* body [provider request body]
* Authentication Bearer with access_token
* Store each cert in a file with according name.
4. Partial update Provider:
Jorge Moratinos
committed
* Send **PATCH** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations/{API_API_PROVIDER_NOT_REGISTERED}**
* body [provider request patch body]
* Use AMF Certificate.
**Expected Result**:
1. Partial update provider:
1. **404 Not Found** response.
2. body returned must accomplish **ProblemDetails** data structure, with:
* status 404
* title with message "Not Found"
* detail with message "Not Exist Provider Enrolment Details".
Jorge Moratinos
committed
* cause with message "Not found registrations to Send **THIS** api provider details".
## Test Case 7: Delete Registered Api Provider
**Test ID**: ***capif_api_provider_management-7***
**Description**:
This test case will check that a Registered Api Provider can be deleted
**Pre-Conditions**:
* Api Provider was registered previously
**Execution Steps**:
1. Register Provider at CCF
2. Register Provider
3. Delete Provider
**Information of Test**:
1. Create public and private key at provider for provider itself and each function (apf, aef and amf)
2. Retrieve access_token by User:
* Send **GET** to **https://${CAPIF_REGISTER}:${CAPIF_REGISTER_PORT}/getauth**
* Include basic Auth Header with Admin user/password
* Retrieve **access_token** and the urls needed for next requests from response body [user_getauth_response_body_example]
3. Register Provider:
Jorge Moratinos
committed
* Send **POST** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations**
* body [provider request body]
* Authentication Bearer with access_token
* Store each cert in a file with according name.
4. Delete registered provider:
Jorge Moratinos
committed
* Send **DELETE** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations/{registrationId}**
* Use AMF Certificate.
**Expected Result**:
1. Delete Provider:
1. **204 No Content** response.
## Test Case 8: Delete Not Registered Api Provider
**Test ID**: ***capif_api_provider_management-8***
**Description**:
This test case will check that a Non-Registered Api Provider cannot be deleted
**Pre-Conditions**:
* Api Provider was not registered previously
**Execution Steps**:
1. Register Provider at CCF
2. Delete Provider
**Information of Test**:
1. Create public and private key at provider for provider itself and each function (apf, aef and amf)
2. Retrieve access_token by User:
* Send **GET** to **https://${CAPIF_REGISTER}:${CAPIF_REGISTER_PORT}/getauth**
* Include basic Auth Header with Admin user/password
* Retrieve **access_token** and the urls needed for next requests from response body [user_getauth_response_body_example]
3. Register Provider:
Jorge Moratinos
committed
* Send **POST** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations**
* body [provider request body]
* Authentication Bearer with access_token
* Store each cert in a file with according name.
4. Delete registered provider at Provider Management:
Jorge Moratinos
committed
* Send **DELETE** **https://{CAPIF_HOSTNAME}/api-provider-management/v1/registrations/{API_PROVIDER_NOT_REGISTERED}**
* Use AMF Certificate.
**Expected Result**:
1. Delete Provider:
1. **404 Not Found** response.
2. body returned must accomplish **ProblemDetails** data structure, with:
* status 404
* title with message "Not Found"
* detail with message "Not Exist Provider Enrolment Details".
Jorge Moratinos
committed
* cause with message "Not found registrations to Send **THIS** api provider details".
[provider request body]: ./provider_details_post_example.json "API Provider Enrolment Request"
[provider request patch body]: ./provider_details_enrolment_details_patch_example.json "API Provider Enrolment Patch Request"
[user_getauth_response_body_example]: ../common_operations/user_getauth_response_body_example.json "User GetAuth response Body Example"