{ "info": { "author": "Jo\u00e3o Luiz Lorencetti", "author_email": "me@dirtycoder.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Framework :: Pytest", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Testing" ], "description": "===================\npytest-deadfixtures\n===================\n\n.. image:: https://img.shields.io/badge/patreon-donate-ff69b4.svg\n :target: https://www.patreon.com/jllorencetti\n :alt: Donate\n\n.. image:: https://travis-ci.org/jllorencetti/pytest-deadfixtures.svg?branch=master\n :target: https://travis-ci.org/jllorencetti/pytest-deadfixtures\n :alt: See Build Status on Travis CI\n\nA simple plugin to list unused or duplicated fixtures in a pytest suite.\n\n----\n\nFeatures\n--------\n\n* List unused fixtures in your tests\n* List duplicated fixtures\n\n\nInstallation\n------------\n\nYou can install \"pytest-deadfixtures\" via `pip`_ from `PyPI`_::\n\n $ pip install pytest-deadfixtures\n\nUsage\n-----\n\nImportant\n*********\n\nThe `--dead-fixtures` option will not run your tests and it's also sensible for errors in the pytest collection step.\nIf you are using as part of you CI process the recommended way is to run it after the default test run. For example::\n\n script:\n - pytest\n - pytest --dead-fixtures\n\n\nListing unused fixtures\n***********************\n\nJust run 'pytest' with an extra option '--dead-fixtures'::\n\n $ pytest --dead-fixtures\n ============================= test session starts ==============================\n (hidden for brevity)\n\n Hey there, I believe the following fixture(s) are not being used:\n Fixture name: some_fixture, location: test_write_docs_when_verbose.py:5\n\n ========================= no tests ran in 0.00 seconds =========================\n\nUsing some level of verbosity will also print the docstring of each fixture::\n\n $ pytest --dead-fixtures -v\n ============================= test session starts ==============================\n (hidden for brevity)\n\n Hey there, I believe the following fixture(s) are not being used:\n Fixture name: some_fixture, location: test_write_docs_when_verbose.py:5\n Blabla fixture docs\n\n ========================= no tests ran in 0.00 seconds =========================\n\nListing repeated fixtures\n*************************\n\nNow that you removed every unused fixture of your test suite, what if you want to go an extra mile?\n\nAn important note about this is that it uses the fixture return value to verify if two or more fixtures are equal.\n\nThis means **fixtures without a truthy return value will be skipped**.\n\nYou should use this as a hint only, verify that the functionality provided by both fixtures are really repeated before deleting one of them.\n\nJust run 'pytest' with an extra option '--dup-fixtures', unlike the '--dead-fixtures' option, it'll normally run you tests::\n\n $ pytest --dup-fixtures\n ======================================================================================================================== test session starts ========================================================================================================================\n (hidden for brevity)\n\n tests/test_deadfixtures.py ........\n\n You may have some duplicate fixtures:\n Fixture name: someclass_fixture, location: test_repeated_fixtures.py:12\n Fixture name: someclass_samefixture, location: test_repeated_fixtures.py:17\n \n \nProjects using it\n-----------------\n\n- `wemake-django-template`_\n\nContributing\n------------\nContributions are very welcome. Tests can be run with `tox`_, please ensure\nthe coverage at least stays the same before you submit a pull request.\n\nLicense\n-------\n\nDistributed under the terms of the `MIT`_ license, 'pytest-deadfixtures' is free and open source software\n\n\nIssues\n------\n\nIf you encounter any problems, please `file an issue`_ along with a detailed description.\n\n.. _`@jllorencetti`: https://github.com/jllorencetti\n.. _`MIT`: http://opensource.org/licenses/MIT\n.. _`file an issue`: https://github.com/jllorencetti/pytest-deadfixtures/issues\n.. _`pytest`: https://github.com/pytest-dev/pytest\n.. _`tox`: https://tox.readthedocs.io/en/latest/\n.. _`pip`: https://pypi.python.org/pypi/pip/\n.. _`PyPI`: https://pypi.python.org/pypi\n.. _`wemake-django-template`: https://github.com/wemake-services/wemake-django-template\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/jllorencetti/pytest-deadfixtures", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "pytest-deadfixtures", "package_url": "https://pypi.org/project/pytest-deadfixtures/", "platform": "", "project_url": "https://pypi.org/project/pytest-deadfixtures/", "project_urls": { "Homepage": "https://github.com/jllorencetti/pytest-deadfixtures" }, "release_url": "https://pypi.org/project/pytest-deadfixtures/2.1.0/", "requires_dist": null, "requires_python": "", "summary": "A simple plugin to list unused fixtures in pytest", "version": "2.1.0" }, "last_serial": 4453328, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "ad6467632ae06705a151636552466c58", "sha256": "11c5e455f94ed124e075b30d4f968c520933b1b7ad0080f8ca359eda60185057" }, "downloads": -1, "filename": "pytest-deadfixtures-0.1.0.tar.gz", "has_sig": false, "md5_digest": "ad6467632ae06705a151636552466c58", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3868, "upload_time": "2017-12-31T18:37:29", "url": "https://files.pythonhosted.org/packages/8b/97/c88a9e7dc4b9589ea7572e07c655878d9766d081abd0dcd3770677b0b666/pytest-deadfixtures-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "3baace10695a6ef1165f830457f1f59f", "sha256": "09d142a682db34614a782ff94c7708b381c3a720faedbe9eb77a439645c71458" }, "downloads": -1, "filename": "pytest-deadfixtures-0.2.0.tar.gz", "has_sig": false, "md5_digest": "3baace10695a6ef1165f830457f1f59f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4564, "upload_time": "2018-01-08T00:47:30", "url": "https://files.pythonhosted.org/packages/58/f8/fa6170991bfd6ea74d2d1dc8631a9e7581066477beed5bd02a092998237b/pytest-deadfixtures-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "b2182077fca20624d17027c27cdbde28", "sha256": "b5663c5545c33a8baa551b1a4f0c355db79c587aa89dab970dfd30ed87151d80" }, "downloads": -1, "filename": "pytest-deadfixtures-0.2.1.tar.gz", "has_sig": false, "md5_digest": "b2182077fca20624d17027c27cdbde28", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4740, "upload_time": "2018-01-08T01:19:43", "url": "https://files.pythonhosted.org/packages/32/02/168f29e12807cef1cb8dfef35af82860cff80909b03c56ac21f533deeafe/pytest-deadfixtures-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "f1a746e7b62c8e2ecc263a6b74514ab4", "sha256": "4a10d98009fad304c26d797571bce3d3497a0d3c9ffc45a09e85fa845252313c" }, "downloads": -1, "filename": "pytest-deadfixtures-0.2.2.tar.gz", "has_sig": false, "md5_digest": "f1a746e7b62c8e2ecc263a6b74514ab4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4779, "upload_time": "2018-01-08T01:36:15", "url": "https://files.pythonhosted.org/packages/d0/01/2f9f5d9527b23c9c74c2f2b1cb8f16b3859f3bd3ea76b4f30e66fbdb2357/pytest-deadfixtures-0.2.2.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "4da08a535dc106c50632a08e75a2a683", "sha256": "51337c54ceb1cac61ab3e03fce3ba535003662ede9daec11d9da072c9d35a1b3" }, "downloads": -1, "filename": "pytest-deadfixtures-0.3.0.tar.gz", "has_sig": false, "md5_digest": "4da08a535dc106c50632a08e75a2a683", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5597, "upload_time": "2018-01-18T00:40:53", "url": "https://files.pythonhosted.org/packages/73/38/fa8b42684edafb7c1e9950f1e520db3071a7c5b0b72e9c3e86ef10f458f0/pytest-deadfixtures-0.3.0.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "f015f58de6e00a873626aafc76b30619", "sha256": "c3559f428007f9b7f10fcc9db932cd32827e4396493365bf35102ed1aecdbbc7" }, "downloads": -1, "filename": "pytest-deadfixtures-1.0.0.tar.gz", "has_sig": false, "md5_digest": "f015f58de6e00a873626aafc76b30619", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5716, "upload_time": "2018-03-24T17:16:04", "url": "https://files.pythonhosted.org/packages/58/b1/f3f4e31507e74e9d020425430a924d0a4792260559c0aedb47be4827fc6e/pytest-deadfixtures-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "c3364186f5acd4c1188c6d3012b1c2eb", "sha256": "d8548ae55b9996ce14e5ec7066a1cf8bb32f5b6211d76a290fd6b398af4cacfc" }, "downloads": -1, "filename": "pytest_deadfixtures-1.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c3364186f5acd4c1188c6d3012b1c2eb", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 4637, "upload_time": "2018-04-05T01:37:12", "url": "https://files.pythonhosted.org/packages/13/c6/5041e72db2171fabdd014d01fbe20689b51ba2601fa1c637e8357910c93a/pytest_deadfixtures-1.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "437edcefd0785fb0f51da7a7374f6bce", "sha256": "22f431178b32117354abf5d6044097eb6ebc529e31f92cbdba6e11afd4f31fe7" }, "downloads": -1, "filename": "pytest-deadfixtures-1.0.1.tar.gz", "has_sig": false, "md5_digest": "437edcefd0785fb0f51da7a7374f6bce", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5809, "upload_time": "2018-04-05T01:37:10", "url": "https://files.pythonhosted.org/packages/bc/3a/e1d5d1a871d017bc34d78d1465699fa897b0a4285d39f48f7574d0b88bda/pytest-deadfixtures-1.0.1.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "27ad9efbcac18fe3b48523338e260214", "sha256": "6c9a465f9cdbaf26fa3263fa5edb65d6dcdf8e6af7223b50917cc8d00edef9c3" }, "downloads": -1, "filename": "pytest_deadfixtures-2.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "27ad9efbcac18fe3b48523338e260214", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 4736, "upload_time": "2018-04-27T01:08:17", "url": "https://files.pythonhosted.org/packages/ec/bd/07c552dcbe09cddfac695f1ff7eaed103b76439ab6912d5a92bd0f973d01/pytest_deadfixtures-2.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2c52cfa9b8355431aa6771a8bc897693", "sha256": "870227dd1aefbcbabcb574f1615d09773484aacd06d92a1f0c8ba01d99dd7c82" }, "downloads": -1, "filename": "pytest-deadfixtures-2.0.0.tar.gz", "has_sig": false, "md5_digest": "2c52cfa9b8355431aa6771a8bc897693", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5947, "upload_time": "2018-04-27T01:08:15", "url": "https://files.pythonhosted.org/packages/0c/d2/71051c8cba741338a723d3431567f6eed1370258686527a9671ba2d2985e/pytest-deadfixtures-2.0.0.tar.gz" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "b9e002df6bda3304fe8b42ac7dfc41fc", "sha256": "cac3975fa3ac27d6e58f39ae18cbd5bc58396d8319a4c4f603a4220dd6eb27d9" }, "downloads": -1, "filename": "pytest_deadfixtures-2.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b9e002df6bda3304fe8b42ac7dfc41fc", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 4883, "upload_time": "2018-04-28T02:17:56", "url": "https://files.pythonhosted.org/packages/cc/65/b611b0604a02ec5ef14e3c8b3a379eac07d6671a3cbdd89461962b79665e/pytest_deadfixtures-2.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0955fd5586acb91e6dec377f09058ec3", "sha256": "d436f4c6d2d9fb6977eb6aed6e3f7120ee2bd4fdc117f699cf5c296ddf2a3d95" }, "downloads": -1, "filename": "pytest-deadfixtures-2.0.1.tar.gz", "has_sig": false, "md5_digest": "0955fd5586acb91e6dec377f09058ec3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6187, "upload_time": "2018-04-28T02:17:54", "url": "https://files.pythonhosted.org/packages/ef/c3/25c720b5bf1cc596b59bb9a42ad3b37877d889b51b6e0b192f31bb9e4d17/pytest-deadfixtures-2.0.1.tar.gz" } ], "2.1.0": [ { "comment_text": "", "digests": { "md5": "f8f658000fff3f3413762d8573ba0267", "sha256": "61e34fb0f777bc0f321c7d45f39447e965fb1a6d2de243e47aa034387229d9d3" }, "downloads": -1, "filename": "pytest_deadfixtures-2.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f8f658000fff3f3413762d8573ba0267", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 5042, "upload_time": "2018-11-05T15:26:21", "url": "https://files.pythonhosted.org/packages/d9/95/57d8cba74a11c794a7fdfc0947093a8d1a85abce153c44767909fd839084/pytest_deadfixtures-2.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3446b7f4e12c9574897a6ab4880828c9", "sha256": "458b2314862696af11223d869c97814e63db8a7b9f61dcf42fe07a72a7ff9bd8" }, "downloads": -1, "filename": "pytest-deadfixtures-2.1.0.tar.gz", "has_sig": false, "md5_digest": "3446b7f4e12c9574897a6ab4880828c9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6397, "upload_time": "2018-11-05T15:26:19", "url": "https://files.pythonhosted.org/packages/2e/50/6913fc646066ee68ce8df0e04a86995588857033e562a79a4f1b948e0493/pytest-deadfixtures-2.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f8f658000fff3f3413762d8573ba0267", "sha256": "61e34fb0f777bc0f321c7d45f39447e965fb1a6d2de243e47aa034387229d9d3" }, "downloads": -1, "filename": "pytest_deadfixtures-2.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f8f658000fff3f3413762d8573ba0267", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 5042, "upload_time": "2018-11-05T15:26:21", "url": "https://files.pythonhosted.org/packages/d9/95/57d8cba74a11c794a7fdfc0947093a8d1a85abce153c44767909fd839084/pytest_deadfixtures-2.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3446b7f4e12c9574897a6ab4880828c9", "sha256": "458b2314862696af11223d869c97814e63db8a7b9f61dcf42fe07a72a7ff9bd8" }, "downloads": -1, "filename": "pytest-deadfixtures-2.1.0.tar.gz", "has_sig": false, "md5_digest": "3446b7f4e12c9574897a6ab4880828c9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6397, "upload_time": "2018-11-05T15:26:19", "url": "https://files.pythonhosted.org/packages/2e/50/6913fc646066ee68ce8df0e04a86995588857033e562a79a4f1b948e0493/pytest-deadfixtures-2.1.0.tar.gz" } ] }