SKA Mid.CBF Common Test Infrastructure

This internal code repository contains common code for ska-mid-cbf-system-tests, ska-mid-cbf-fhs-system-tests, and ska-mid-cbf-int-tests.

Code repository: here

ReadtheDocs: here

Services

ska-mid-cbf-common-test-infrastructure contains multiple services for usage in test repositories with service source code located in the src/ska-mid-cbf-common-test-infrastructure directory and service unit testing located in the tests directory.

List of Current Services

  • test_logging

  • template_service

Adding a New Service

  1. start by duplicating the template_service structure in src/ska-mid-cbf-common-test-infrastructure and in tests and renaming directories according to new service name service_name

  2. for TDD progression write tests for service in service_name in tests (discovery occurs by normal pytest rules)

  3. implement source code in service_name in src/ska-mid-cbf-common-test-infrastructure/service_name to pass tests

  4. go to docs/src and perform the following:

    • use sphinx-apidoc to generate module documentation in output dir service_name modifying the files as necessary to generate desired doc structure

    • delete the modules.rst file unless using it

    • in service_name.rst modify do document API as necessary (note: automodule will include all classes imported into your service’s __init__.py if you add :import-members:, otherwise use ..autoclass:: with explicity python import paths to names to import classes one by one, more ways to use this file and included in sphinx documentation here)

    • link path to service_name.rst in new section in docs/src/index.rst

  5. add service to “List of Current Services” in this README

Bumping release version

Follow instructions located at: https://developer.skatelescope.org/en/latest/tutorial/release-management/automate-release-process.html#how-to-make-a-release. Since CTI is internal to CIPA there is no need for a REL ticket.