...
Expand |
---|
The following abbreviations are used in the functional test case description below since there is substantial repetition and notes associated with some terms.
|
Anchor | ||||
---|---|---|---|---|
|
...
Id | Description | Pre-conditions | Test Steps | Expected Results | |
A: Health Checks | |||||
A.1: OOF-OSDF Component Health Checks | |||||
A.1a | Perform healthcheck for the OOF-OSDF components using Healthcheck API
| OSDF application component (OSDF application server) should be up and running Server and authentication details should be configured at $OOF_HOME/config/feature-healthcheck.properties | SIMPLE-GET-HEALTH-CHECK-API | HTTP-200-TRUE | |
A.2: OOF-OSDF Dependencies Health Checks Test whether dependencies (external components) such as Policy, and other OOF components (e.g. HAS API) respond to health checks. | |||||
A.2a | Perform healthcheck for the following external components and OOF components using Healthcheck API
| Service configuration file(s) should be available and loaded. Services should be up and running. | SIMPLE-GET-HEALTH-CHECK-API | All components should return health status as “true” (HTTP code 200, content as string "true") Note 1: Verify whether the external components also have standardized on "true" as the value Note 2: Verify if this step is required or optional (it will help in quickly debugging but will add extra logic in our testing) | HTTP-200-TRUE |
B: Tests Related to Data from Emulators (valid and invalid data sets) | |||||
B.1: Checking Dependencies (Mostly external components) via EmulatorsCheck Requests covering Valid and Invalid Data Testing whether dependencies (mostly external components such as Policy, A&AI, Multi Cloud, etc., and in some cases other OOF containers) are available and return expected data. The external components will be mock emulators, while internal components may be mock or real. | |||||
2 | Retrieve data from mock emulators for the following components or links via emulators:
| Emulator configuration file should be available and loaded. Emulator services should be up and running. For some internal component testing, emulators may be replaced by real systems when convenient | API – specific to each component Method - POST in most cases; GET in some cases Endpoint: http://<host>:<port>/<specific-API> Notes:
| Should receive expected data TODO: Expand individual cases as separate cells within this section | |
C: Tests Related to Data from Emulators (valid and invalid data sets) | |||||
B.2: | |||||
B.1: Checking Dependencies (Mostly external components) via Emulators Testing whether dependencies (mostly external components such as Policy, A&AI, Multi Cloud, etc., and in some cases other OOF containers) are available and return expected data. The external components will be mock emulators, while internal components may be mock or real. |
...
- Provide an end point for SO to make homing requests
- Ensure authentication and validate the incoming request payload based on a model (Python Schematics model based on the SO-OOF API)
- Fetch policies relevant to the SO's request (e.g. based on specific use case such as vCPE) and ensure that the policies are valid (well formed and contain required attributes)
- Send response to SO that the request is accepted and is in processing (or send an error response)
- Create a "template" (request payload) for OOF-HAS and submit the request to OOF-HAS
- Periodically poll OOF-HAS for request processing status and optimization solution (with a configurable timeout) and validate the response based on a model (Python Schematics model)
- Post the optimization solution to the call-back URL specified in the request from SO in the format defined by SO-OOF API (or send an error response)
...