Acceptance tests
Description:
ADR: osdu/platform/ci-cd-pipelines#49
Important note:
CSV-Parser test modules use CSP implementations as direct dependencies:
They launch these implementations in code, so we had to decouple this one too:
This was achieved by using test containers. https://testcontainers.com/
This change requires that the test environment has a Docker daemon running. Tests now need to use a CSV-Parser container that was previously built in the same pipeline.
- Created the acceptance-test module.
- Implemented a CSP-Parser launcher using test containers.
- Added a common, standards-based configuration for token issuing, supporting both OIDC and direct token injection.
- Added a Readme file with the description of required variables to run tests.
- Removed classes that interact with low-level backends, such as
TestBlobClient.class
andTestCloudStorage.class
, which were not used during tests. - Deleted the feature files
split-blob.feature
andintermediate-storage.feature
, as they had commented-out test cases. - Test-containers were used for running CSV-Parser during tests, with no direct dependency.
How to test:
Locally.
Changes include:
-
Refactor (a non-breaking change that improves code maintainability). -
Bugfix (a non-breaking change that solves an issue). -
New feature (a non-breaking change that adds functionality). -
Breaking change (a change that is not backward-compatible and/or changes current functionality).
Changes in:
-
Common code
Dev Checklist:
-
Added Unit Tests, wherever applicable. -
Updated the Readme, if applicable. -
Existing Tests pass -
Verified functionality locally -
Self Reviewed my code for formatting and complex business logic.
Other comments:
The sequence of a test job should be adjusted since we aim to use a previously built container.
Edited by Rustam Lotsmanenko (EPAM)