SKA PACT testing for Tango

Documentation Status

This repository contains a Python implementation for Pact, adapted to test the interactions between Tango devices. Pact is a specification for Consumer Driven Contracts Testing. For further information about Pact project, contracts testing, pros and cons and useful resources please refer to the Pact website.

Requirements

The system used for development needs to have Python 3 and pip installed.

Install

From source

  • Clone the repo

git clone git@gitlab.com:ska-telescope/ska-pact-tango.git
  • Install requirements

python3 -m pip install -r requirements.txt
  • Install the package

python3 -m pip install .

From the Nexus PyPI

python3 -m pip install ska-pact-tango --extra-index-url https://nexus.engageska-portugal.pt/repository/pypi/simple

Testing

  • Install the test requirements

python3 -m pip install -r requirements-test.txt
  • Run the tests

tox
  • Lint

tox -e lint

Writing documentation

The documentation generator for this project is derived from SKA’s SKA Developer Portal repository

The documentation can be edited under ./docs/src

Build the documentation

  • Install the test requirements

python3 -m pip install -r requirements-test.txt
  • Build docs

    tox -e docs
    

The documentation can then be consulted by opening the file ./docs/build/html/index.html