Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
.. image:: https://img.shields.io/pypi/v/pytest-molecule.svg :target: https://pypi.org/project/pytest-molecule :alt: PyPI version
.. image:: https://img.shields.io/pypi/pyversions/pytest-molecule.svg :target: https://pypi.org/project/pytest-molecule :alt: Python versions
.. image:: https://zuul-ci.org/gated.svg :target: https://dashboard.zuul.ansible.com/t/ansible/builds?project=pycontribs/selinux :alt: See Build Status on Zuul CI
.. image:: https://img.shields.io/badge/code%20style-black-000000.svg :target: https://github.com/python/black :alt: Python Black Code Style
PyTest Molecule Plugin :: auto detects and runs molecule tests
This plugin enables pytest discovery of all molecule.yml
files inside the
codebase and runs them as pytest tests.
Once you install pytest-molecule you should be able to just run pytest
in
order to run molecule on all roles and scenarios.
Optionally you can define MOLECULE_OPTS
for passing extra parameters to
each molecule call.
Discovered tests do have molecule driver
and platforms
added as
markers_, so you can selectively limit which test types to run:
.. code-block:: shell
# Lists all tests that uses docker
$ pytest --collect-only -m docker
# Runs scenarios with platform named centos7 and delegated driver:
$ pytest -m delegated -m centos7
If the molecule scenario does not contain information about the driver, the
test associated with it gets a no_driver
mark.
Please note that at this moment molecule will run the entire scenario if the markers are platforms, this is not yet a way to limit which platforms are executed inside a specific scenario.
All tests are added the molecule
marker.
This plugin also adds a new pytest option named
--molecule-unavailable-driver=skip
which can be used to tell it what to do
when molecule drivers are not loading. Current default is None
but you
can choose marks like skip
or xfail
.
If you need to skip or ignore a particular scenario, just add either xfail
or skip
to markers list inside its config file.
.. code-block:: yaml
markers:
- xfail # broken scenario, pytest will run it but ignore the result
You can install "pytest-molecule" via pip_ from PyPI_:
.. code-block:: shell
$ PIP_NO_BUILD_ISOLATION=false pip install pytest-molecule
PIP_NO_BUILD_ISOLATION
is needed only on ancient python distributions to
workaround https://github.com/pypa/pip/issues/5229
Contributions are very welcome. Tests can be run with tox_, please ensure the coverage at least stays the same before you submit a pull request.
Distributed under the terms of the MIT_ license, "pytest-molecule" is free and open source software
If you encounter any problems, please file an issue
_ along with a detailed
description.
.. _MIT
: http://opensource.org/licenses/MIT
.. _file an issue
: https://github.com/pycontribs/pytest-molecule/issues
.. _pytest
: https://github.com/pytest-dev/pytest
.. _tox
: https://tox.readthedocs.io/en/latest/
.. _pip
: https://pypi.org/project/pip/
.. _PyPI
: https://pypi.org/project
.. _markers: http://doc.pytest.org/en/latest/example/markers.html
FAQs
PyTest Molecule Plugin :: discover and run molecule tests
We found that pytest-molecule demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 6 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.