pytest-reana 0.95.0a6
Pytest fixtures for REANA.
Requires Python: >=3.8

# pytest-REANA

[![image](https://img.shields.io/pypi/pyversions/pytest-reana.svg)](https://pypi.org/pypi/pytest-reana)
[![image](https://github.com/reanahub/pytest-reana/workflows/CI/badge.svg)](https://github.com/reanahub/pytest-reana/actions)
[![image](https://readthedocs.org/projects/pytest-reana/badge/?version=latest)](https://pytest-reana.readthedocs.io/en/latest/?badge=latest)
[![image](https://codecov.io/gh/reanahub/pytest-reana/branch/master/graph/badge.svg)](https://codecov.io/gh/reanahub/pytest-reana)
[![image](https://img.shields.io/badge/discourse-forum-blue.svg)](https://forum.reana.io)
[![image](https://img.shields.io/github/license/reanahub/pytest-reana.svg)](https://github.com/reanahub/pytest-reana/blob/master/LICENSE)
[![image](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)

## About

pytest-REANA is a component of the [REANA](http://www.reana.io/) reusable and
reproducible research data analysis platform. It provides pytest fixtures and test
utilities.

## Features

- pytest fixtures
- mocking OpenAPI client with request format validation
- mocking Advanced Message Queuing Protocol consumers and producers
- mocking Celery tasks
- mocking file system workspace access
- mocking database access
- includes sample workspace directory

## Usage

The detailed information on how to install and use REANA can be found in
[docs.reana.io](https://docs.reana.io).

## Useful links

- [REANA project home page](http://www.reana.io/)
- [REANA user documentation](https://docs.reana.io)
- [REANA user support forum](https://forum.reana.io)
- [pytest-REANA releases](https://pytest-reana.readthedocs.io/en/latest#changes)
- [pytest-REANA developer documentation](https://pytest-reana.readthedocs.io/)
- [pytest-REANA known issues](https://github.com/reanahub/pytest-reana/issues)
- [pytest-REANA source code](https://github.com/reanahub/pytest-reana)


# Changelog

## 0.9.2 (2023-11-30)

- Changes CI to use the stable release of Python 3.12.

## 0.9.1 (2023-09-26)

- Adds support for Python 3.12.
- Changes `apispec` dependency version in order to be compatible with `PyYAML` v6.
- Fixes container image fixtures to be Podman-compatible.
- Fixes Kombu documentation linking.

## 0.9.0 (2022-12-13)

- Adds fixture providing example of user secrets needed for Kerberos tests.
- Adds support for Python 3.11.
- Fixes location of Celery docs for ReadTheDocs pages.
- Removes hard-dependency on `black` code formatter version.

## 0.8.1 (2022-01-05)

- Adds support for Python 3.10.

## 0.8.0 (2021-11-22)

- Adds nested Yadage workflow specification fixture.
- Adds empty workflow workspaces for sample workflows by default.
- Adds internal representation of a scatter-gather Snakemake workflow fixture.
- Changes `tmp_shared_volume_path` fixture to be configurable through environment variable.
- Changes fixtures to run with the full workspace path stored in the database.
- Removes support for Python 2.

## 0.7.2 (2021-07-02)

- Changes internal dependencies to remove click.

## 0.7.1 (2021-03-17)

- Adds support for Python 3.9.
- Fixes minor code warnings.
- Fixes installation by upgrading REANA-DB version.

## 0.7.0 (2020-10-20)

- Adds new `__reana` database schema for `db` fixture.
- Fixes a problem related to duplicated database session.
- Changes code formatting to respect `black` coding style.
- Changes documentation to single-page layout.

## 0.6.0 (2019-12-19)

- Adds fixtures for secrets store.
- Centralises test requirements.
- Adds Python 3.8 support.

## 0.5.0 (2019-04-16)

- Makes workspace path configurable for the `sample_workflow_workspace`
  fixture through the `path` parameter.
- Adds `sample_serial_workflow_in_db` fixture.
- Exposes previously hidden `sample_yadage_workflow_in_db` fixture.
- Adds missing database session close in `session` fixture.
- Adds helpers to represent starting and requeueing job conditions,
  `sample_condition_for_starting_queued_workflows` and
  `sample_condition_for_requeueing_workflows`.

## 0.4.1 (2018-11-06)

- Adds directory including sample workspace data.

## 0.4.0 (2018-11-06)

- Initial public release.