{
"info": {
"author": "Leiden University Medical Center",
"author_email": "sasc@lumc.nl",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 5 - Production/Stable",
"Framework :: Pytest",
"License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3 :: Only"
],
"description": "===============\npytest-workflow\n===============\n\n.. Badges have empty alts. So nothing shows up if they do not work.\n.. This fixes readthedocs issues with badges.\n.. image:: https://img.shields.io/pypi/v/pytest-workflow.svg\n :target: https://pypi.org/project/pytest-workflow/\n :alt:\n\n.. image:: https://img.shields.io/conda/v/conda-forge/pytest-workflow.svg\n :target: https://anaconda.org/conda-forge/pytest-workflow\n :alt:\n\n.. image:: https://img.shields.io/pypi/pyversions/pytest-workflow.svg\n :target: https://pypi.org/project/pytest-workflow/\n :alt:\n\n.. image:: https://img.shields.io/pypi/l/pytest-workflow.svg\n :target: https://github.com/LUMC/pytest-workflow/blob/master/LICENSE\n :alt:\n\n.. image:: https://travis-ci.org/LUMC/pytest-workflow.svg?branch=develop\n :target: https://travis-ci.org/LUMC/pytest-workflow\n :alt:\n\n.. image:: https://codecov.io/gh/LUMC/pytest-workflow/branch/develop/graph/badge.svg\n :target: https://codecov.io/gh/LUMC/pytest-workflow\n :alt:\n\npytest-workflow is a pytest plugin that aims to make pipeline/workflow testing easy\nby using yaml files for the test configuration.\n\nFor our complete documentation checkout our\n`readthedocs page `_.\n\n\nInstallation\n============\nPytest-workflow requires Python 3.5 or higher. It is tested on Python 3.5, 3.6\nand 3.7. Python 2 is not supported.\n\n- Make sure your virtual environment is activated.\n- Install using pip ``pip install pytest-workflow``\n- Create a ``tests`` directory in the root of your repository.\n- Create your test yaml files in the ``tests`` directory.\n\nPytest-workflow is also available as a `conda package on conda-forge\n`_. Follow\n`these instructions \n`_ \nto set up channels properly in order to use conda-forge. Alternatively,\nyou can `set up the channels correctly for use with bioconda \n`_. After that ``conda\ninstall pytest-workflow`` can be used to install pytest-workflow. \n\nQuickstart\n==========\n\nRun ``pytest`` from an environment with pytest-workflow installed.\nPytest will automatically gather files in the ``tests`` directory starting with\n``test`` and ending in ``.yaml`` or ``.yml``.\n\nTo check the progress of a workflow while it is running you can use ``tail -f``\non the ``stdout`` or ``stderr`` file of the workflow. The locations of these\nfiles are reported in the log as soon as a workflow is started.\n\nFor debugging pipelines using the ``--kwd`` or ``--keep-workflow-wd`` flag is\nrecommended. This will keep the workflow directory and logs after the test run\nso it is possible to check where the pipeline crashed. The ``-v`` flag can come\nin handy as well as it gives a complete overview of succeeded and failed tests.\n\nBelow is an example of a YAML file that defines a test:\n\n.. code-block:: yaml\n\n - name: Touch a file\n command: touch test.file\n files:\n - path: test.file\n\nThis will run ``touch test.file`` and check afterwards if a file with path:\n``test.file`` is present. It will also check if the ``command`` has exited\nwith exit code ``0``, which is the only default test that is run. Testing\nworkflows that exit with another exit code is also possible. Several other\npredefined tests as well as custom tests are possible.\n\nDocumentation for more advanced use cases can be found on our\n`readthedocs page `_.\n\n\n",
"description_content_type": "text/x-rst",
"docs_url": null,
"download_url": "",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "https://github.com/LUMC/pytest-workflow",
"keywords": "pytest workflow pipeline yaml yml",
"license": "AGPL-3.0-or-later",
"maintainer": "",
"maintainer_email": "",
"name": "pytest-workflow",
"package_url": "https://pypi.org/project/pytest-workflow/",
"platform": "",
"project_url": "https://pypi.org/project/pytest-workflow/",
"project_urls": {
"Homepage": "https://github.com/LUMC/pytest-workflow"
},
"release_url": "https://pypi.org/project/pytest-workflow/1.2.1/",
"requires_dist": [
"pytest (>=4)",
"pyyaml",
"jsonschema"
],
"requires_python": ">=3.5",
"summary": "A pytest plugin for configuring workflow/pipeline tests using YAML files",
"version": "1.2.1"
},
"last_serial": 5367294,
"releases": {
"0.1.0": [
{
"comment_text": "",
"digests": {
"md5": "df469b81bd1820932974f5fd5da8e1fa",
"sha256": "cf5d1aeea7f13bd8ab3197c5dccb47c0153d2bf1d7d77806201da3def84f1196"
},
"downloads": -1,
"filename": "pytest_workflow-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "df469b81bd1820932974f5fd5da8e1fa",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 27500,
"upload_time": "2018-12-21T14:53:45",
"url": "https://files.pythonhosted.org/packages/3e/b7/1c02f730615ec5ca5ad9d7d86e65a5c7ba40754aa25d36830ce209cae2d8/pytest_workflow-0.1.0-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "648b1515d4f3d8312d6ee47a4f76238f",
"sha256": "040942a4e0b8c330b110a6085b7d36fe425332385df6017183cc4306c6f925a2"
},
"downloads": -1,
"filename": "pytest-workflow-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "648b1515d4f3d8312d6ee47a4f76238f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 22984,
"upload_time": "2018-12-21T14:53:47",
"url": "https://files.pythonhosted.org/packages/d2/70/8491507eb5d9f84e6690341e4badb41c7d259ef881558e6ae280729916b7/pytest-workflow-0.1.0.tar.gz"
}
],
"0.2.0": [
{
"comment_text": "",
"digests": {
"md5": "82a442d563c475707cc587074245b025",
"sha256": "2cf7486cda27de0b8da1ef2d07e84be41e7e2308d1c0b554812793f19d42e571"
},
"downloads": -1,
"filename": "pytest_workflow-0.2.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "82a442d563c475707cc587074245b025",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.5",
"size": 26839,
"upload_time": "2019-01-04T08:55:17",
"url": "https://files.pythonhosted.org/packages/11/81/a9ef0a40820d678290d58a595fcfd99814cf2a1b2e22af434ad259e814e7/pytest_workflow-0.2.0-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "e7c4973d810544bcdb9475bcb8554dd3",
"sha256": "1b87b32f1c33b52bca4e0f3cb863bdffb8f350ca1261f3c2c8ae1d8c54638458"
},
"downloads": -1,
"filename": "pytest-workflow-0.2.0.tar.gz",
"has_sig": false,
"md5_digest": "e7c4973d810544bcdb9475bcb8554dd3",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.5",
"size": 11397,
"upload_time": "2019-01-04T08:55:19",
"url": "https://files.pythonhosted.org/packages/f6/67/7c9376ff812d77a9c15b84ce19ef9dac69e9e56f2ed7e53d39be374a6d56/pytest-workflow-0.2.0.tar.gz"
}
],
"0.3.0": [
{
"comment_text": "",
"digests": {
"md5": "b45f760f5328ba32f82104446b9d0715",
"sha256": "9d5e5f5b1e81bcec5c189827107cef44280cd3ea3cc322d1347565a878feb167"
},
"downloads": -1,
"filename": "pytest_workflow-0.3.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "b45f760f5328ba32f82104446b9d0715",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.5",
"size": 30333,
"upload_time": "2019-01-17T15:04:19",
"url": "https://files.pythonhosted.org/packages/b9/18/69378a2547cdea36311fd364a53d0c1f5ed2d5be582285f6030ab1ac7b7a/pytest_workflow-0.3.0-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "181b7f10fb56997fada90a5ef8c0f52b",
"sha256": "9e44fefb916dd5e699b40920c56f89e1662145f569c98fba5345e10047df7ea0"
},
"downloads": -1,
"filename": "pytest-workflow-0.3.0.tar.gz",
"has_sig": false,
"md5_digest": "181b7f10fb56997fada90a5ef8c0f52b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.5",
"size": 14459,
"upload_time": "2019-01-17T15:04:21",
"url": "https://files.pythonhosted.org/packages/ad/de/24f18cf0d25b0019940c1b47566a48c751367be4c0e66d3c5d929c9f493b/pytest-workflow-0.3.0.tar.gz"
}
],
"0.4.0": [
{
"comment_text": "",
"digests": {
"md5": "08587b48b1df096e446ad3fdc9b10936",
"sha256": "a636ca70ec539767057941130e2783230397e932ebd7989ef4c9d8e5b629f936"
},
"downloads": -1,
"filename": "pytest_workflow-0.4.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "08587b48b1df096e446ad3fdc9b10936",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.5",
"size": 31919,
"upload_time": "2019-01-23T15:01:19",
"url": "https://files.pythonhosted.org/packages/c8/e1/376aeb6318e7d0a6533b21d53396e876f14837231c274462001cecaa1ca2/pytest_workflow-0.4.0-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "056e8a7e27f62fd1d1d4be186dd1119e",
"sha256": "9332a0fad51c61e307d672fbffea7916c84192b9ff2da9727261d86b618c6c40"
},
"downloads": -1,
"filename": "pytest-workflow-0.4.0.tar.gz",
"has_sig": false,
"md5_digest": "056e8a7e27f62fd1d1d4be186dd1119e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.5",
"size": 16070,
"upload_time": "2019-01-23T15:01:21",
"url": "https://files.pythonhosted.org/packages/e8/bb/4b21ad68a1bb443377d24de5555ef45aafdf3b3de473dfadd5b2f0a65de3/pytest-workflow-0.4.0.tar.gz"
}
],
"1.0.0": [
{
"comment_text": "",
"digests": {
"md5": "d1a8f7c9ff2cc6d97f338bab0b93a87f",
"sha256": "bdd2c74af8fbe125f9fbced214c68f566bdf79cee6e17cbf080e2c98204a9e83"
},
"downloads": -1,
"filename": "pytest_workflow-1.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "d1a8f7c9ff2cc6d97f338bab0b93a87f",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.5",
"size": 32271,
"upload_time": "2019-02-06T14:32:37",
"url": "https://files.pythonhosted.org/packages/4f/06/ee602f2e45cbd66fae8bd7441d9eb071fc86c05765a0cb608edbfee4d516/pytest_workflow-1.0.0-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "75d6c46ef8db3fe6dcf7f6d0eeae413c",
"sha256": "b5c65cb5e55fa61d1c71555837eab9261bea095d1186b5ace3e4ec94873737d0"
},
"downloads": -1,
"filename": "pytest-workflow-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "75d6c46ef8db3fe6dcf7f6d0eeae413c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.5",
"size": 16313,
"upload_time": "2019-02-06T14:32:39",
"url": "https://files.pythonhosted.org/packages/46/c6/6ffd3737db1ca5184ad3751cdc5e754c5e413dd0bd1e0359a0852f3740ad/pytest-workflow-1.0.0.tar.gz"
}
],
"1.1.0": [
{
"comment_text": "",
"digests": {
"md5": "260404d1d95dc9006868fcf4f2c67302",
"sha256": "662ee37f6eb2bdae934ebe98ecaf061e58f8bee8c7d1e45a577397074f3bb32e"
},
"downloads": -1,
"filename": "pytest_workflow-1.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "260404d1d95dc9006868fcf4f2c67302",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.5",
"size": 33422,
"upload_time": "2019-02-13T16:55:51",
"url": "https://files.pythonhosted.org/packages/89/26/55931400e57eba7f4e79e2989e6d45cf2afb14a4cd7bcca84f6a5429a607/pytest_workflow-1.1.0-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "e8a0471177b7496b7639c414bdadb337",
"sha256": "c855171d1a68801e6cb61befb91faf1c33f4713c36a3e18e40081b0f85e41cd5"
},
"downloads": -1,
"filename": "pytest-workflow-1.1.0.tar.gz",
"has_sig": false,
"md5_digest": "e8a0471177b7496b7639c414bdadb337",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.5",
"size": 17799,
"upload_time": "2019-02-13T16:55:53",
"url": "https://files.pythonhosted.org/packages/ca/0f/3d6204c55576720363a1968177d1f986a2670c6b0ea51a03d1694bea4f55/pytest-workflow-1.1.0.tar.gz"
}
],
"1.1.1": [
{
"comment_text": "",
"digests": {
"md5": "97d4140eecb972965003c7632f6628a0",
"sha256": "85b051af63bbbd99fc8857e998b689a7e1ed9f8d20c98a83358766ce3092ac17"
},
"downloads": -1,
"filename": "pytest_workflow-1.1.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "97d4140eecb972965003c7632f6628a0",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.5",
"size": 33732,
"upload_time": "2019-03-05T10:31:05",
"url": "https://files.pythonhosted.org/packages/c3/8f/5d6f0138f267e9a7f483f48e6553daa56f5447555853f37004ae476f6000/pytest_workflow-1.1.1-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "70d7727c92353d5598d596c5e183dca6",
"sha256": "a8f56b43ec01184c50831261d90ae00c6c8ed7ed6e012f6fe1b01b9063d87c9a"
},
"downloads": -1,
"filename": "pytest-workflow-1.1.1.tar.gz",
"has_sig": false,
"md5_digest": "70d7727c92353d5598d596c5e183dca6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.5",
"size": 17873,
"upload_time": "2019-03-05T10:31:07",
"url": "https://files.pythonhosted.org/packages/40/c6/05e586f9a7f87d940727a43d84acecfcf76bd57c053351621afe7ab5d444/pytest-workflow-1.1.1.tar.gz"
}
],
"1.1.2": [
{
"comment_text": "",
"digests": {
"md5": "a2c2fda518f8e0b0e21b28537c229513",
"sha256": "b16335579e933e86afd9e63afbd28975ecdfbd2f6d3076596fdd5f8258f782b6"
},
"downloads": -1,
"filename": "pytest_workflow-1.1.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "a2c2fda518f8e0b0e21b28537c229513",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.5",
"size": 33873,
"upload_time": "2019-03-07T07:58:32",
"url": "https://files.pythonhosted.org/packages/30/d1/9892dd7af42aec303622cf08407d0b9401a547d7844de0b35b6cdd253381/pytest_workflow-1.1.2-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "b8af8b88b234c30a914a4d1f319f8122",
"sha256": "aedc7732abe473b710423137263611f4b07adf72170c215ea8643c6efd7a91d5"
},
"downloads": -1,
"filename": "pytest-workflow-1.1.2.tar.gz",
"has_sig": false,
"md5_digest": "b8af8b88b234c30a914a4d1f319f8122",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.5",
"size": 18360,
"upload_time": "2019-03-07T07:58:34",
"url": "https://files.pythonhosted.org/packages/13/b4/d2a2c145a6e959ec972f182fc9d50388ac38a45624beabb5769747c1e17d/pytest-workflow-1.1.2.tar.gz"
}
],
"1.2.0": [
{
"comment_text": "",
"digests": {
"md5": "7a90837d9eb99a29b8ce931f84bcbf4c",
"sha256": "a571c986167e565747fd031e24d30296f621a07b4c8cde19c93f0c7fcb84346d"
},
"downloads": -1,
"filename": "pytest_workflow-1.2.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "7a90837d9eb99a29b8ce931f84bcbf4c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.5",
"size": 34346,
"upload_time": "2019-04-04T09:27:55",
"url": "https://files.pythonhosted.org/packages/69/17/980982d973d31257724bb73dc72d6d1cdc1d1d40ab104d978cf3efe450f6/pytest_workflow-1.2.0-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "f35d82256a105d337472e8b8bacfef4a",
"sha256": "1ad067eb2d4b17a2815f4510e2aa23089d8f6824eacbfe0068d42ffce87c3c03"
},
"downloads": -1,
"filename": "pytest-workflow-1.2.0.tar.gz",
"has_sig": false,
"md5_digest": "f35d82256a105d337472e8b8bacfef4a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.5",
"size": 18381,
"upload_time": "2019-04-04T09:27:59",
"url": "https://files.pythonhosted.org/packages/63/7d/c2ab031d524feeef727a8e6c7e791d7951606c66256916c31cb89299d425/pytest-workflow-1.2.0.tar.gz"
}
],
"1.2.1": [
{
"comment_text": "",
"digests": {
"md5": "549dfd9b2b258157d7117267534eb12c",
"sha256": "e52057ddf923eda268ab91b1a7bce277d8fe8ca1b53f55f6c479180537207b7f"
},
"downloads": -1,
"filename": "pytest_workflow-1.2.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "549dfd9b2b258157d7117267534eb12c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.5",
"size": 34446,
"upload_time": "2019-06-06T13:46:02",
"url": "https://files.pythonhosted.org/packages/64/e6/c0bd0349936f9b89f2a07a73f605f5a4fdb757530e871ae80585c5d253be/pytest_workflow-1.2.1-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "1839a44f44793c87d992eb7cc45b5e4f",
"sha256": "093fcbf20c51fe56428a9c09eb9c8b1c1e480b98b0e93a5aecc9ef4b2ffe648d"
},
"downloads": -1,
"filename": "pytest-workflow-1.2.1.tar.gz",
"has_sig": false,
"md5_digest": "1839a44f44793c87d992eb7cc45b5e4f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.5",
"size": 18455,
"upload_time": "2019-06-06T13:46:04",
"url": "https://files.pythonhosted.org/packages/3c/81/b37d710b4bcf569cca263dd2a8a9f45a177f8cdc79726138e2253d2a3cdb/pytest-workflow-1.2.1.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "549dfd9b2b258157d7117267534eb12c",
"sha256": "e52057ddf923eda268ab91b1a7bce277d8fe8ca1b53f55f6c479180537207b7f"
},
"downloads": -1,
"filename": "pytest_workflow-1.2.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "549dfd9b2b258157d7117267534eb12c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.5",
"size": 34446,
"upload_time": "2019-06-06T13:46:02",
"url": "https://files.pythonhosted.org/packages/64/e6/c0bd0349936f9b89f2a07a73f605f5a4fdb757530e871ae80585c5d253be/pytest_workflow-1.2.1-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "1839a44f44793c87d992eb7cc45b5e4f",
"sha256": "093fcbf20c51fe56428a9c09eb9c8b1c1e480b98b0e93a5aecc9ef4b2ffe648d"
},
"downloads": -1,
"filename": "pytest-workflow-1.2.1.tar.gz",
"has_sig": false,
"md5_digest": "1839a44f44793c87d992eb7cc45b5e4f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.5",
"size": 18455,
"upload_time": "2019-06-06T13:46:04",
"url": "https://files.pythonhosted.org/packages/3c/81/b37d710b4bcf569cca263dd2a8a9f45a177f8cdc79726138e2253d2a3cdb/pytest-workflow-1.2.1.tar.gz"
}
]
}