This commit is contained in:
2026-08-02 18:57:40 +02:00
parent 5e5ab8681a
commit 6fa59321c0
5759 changed files with 712133 additions and 66 deletions
@@ -0,0 +1,211 @@
Metadata-Version: 2.4
Name: pytest
Version: 9.1.1
Summary: pytest: simple powerful testing with Python
Author: Brianna Laugher, Bruno Oliveira, Floris Bruynooghe, Freya Bruhin, Holger Krekel, Others (See AUTHORS), Ronny Pfannschmidt
License-Expression: MIT
Project-URL: Changelog, https://docs.pytest.org/en/stable/changelog.html
Project-URL: Contact, https://docs.pytest.org/en/stable/contact.html
Project-URL: Funding, https://docs.pytest.org/en/stable/sponsor.html
Project-URL: Homepage, https://docs.pytest.org/en/latest/
Project-URL: Source, https://github.com/pytest-dev/pytest
Project-URL: Tracker, https://github.com/pytest-dev/pytest/issues
Keywords: test,unittest
Classifier: Development Status :: 6 - Mature
Classifier: Intended Audience :: Developers
Classifier: Operating System :: MacOS
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX
Classifier: Operating System :: Unix
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Programming Language :: Python :: 3.15
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Testing
Classifier: Topic :: Utilities
Requires-Python: >=3.10
Description-Content-Type: text/x-rst
License-File: LICENSE
Requires-Dist: colorama>=0.4; sys_platform == "win32"
Requires-Dist: exceptiongroup>=1; python_version < "3.11"
Requires-Dist: iniconfig>=1.0.1
Requires-Dist: packaging>=22
Requires-Dist: pluggy<2,>=1.5
Requires-Dist: pygments>=2.7.2
Requires-Dist: tomli>=1; python_version < "3.11"
Provides-Extra: dev
Requires-Dist: argcomplete; extra == "dev"
Requires-Dist: attrs>=19.2; extra == "dev"
Requires-Dist: hypothesis>=3.56; extra == "dev"
Requires-Dist: mock; extra == "dev"
Requires-Dist: requests; extra == "dev"
Requires-Dist: setuptools; extra == "dev"
Requires-Dist: xmlschema; extra == "dev"
Dynamic: license-file
.. image:: https://github.com/pytest-dev/pytest/raw/main/doc/en/img/pytest_logo_curves.svg
:target: https://docs.pytest.org/en/stable/
:align: center
:height: 200
:alt: pytest
------
.. image:: https://img.shields.io/pypi/v/pytest.svg
:target: https://pypi.org/project/pytest/
.. image:: https://img.shields.io/conda/vn/conda-forge/pytest.svg
:target: https://anaconda.org/conda-forge/pytest
.. image:: https://img.shields.io/pypi/pyversions/pytest.svg
:target: https://pypi.org/project/pytest/
.. image:: https://codecov.io/gh/pytest-dev/pytest/branch/main/graph/badge.svg
:target: https://codecov.io/gh/pytest-dev/pytest
:alt: Code coverage Status
.. image:: https://github.com/pytest-dev/pytest/actions/workflows/test.yml/badge.svg
:target: https://github.com/pytest-dev/pytest/actions?query=workflow%3Atest
.. image:: https://results.pre-commit.ci/badge/github/pytest-dev/pytest/main.svg
:target: https://results.pre-commit.ci/latest/github/pytest-dev/pytest/main
:alt: pre-commit.ci status
.. image:: https://www.codetriage.com/pytest-dev/pytest/badges/users.svg
:target: https://www.codetriage.com/pytest-dev/pytest
.. image:: https://readthedocs.org/projects/pytest/badge/?version=latest
:target: https://pytest.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status
.. image:: https://img.shields.io/badge/Discord-pytest--dev-blue
:target: https://discord.com/invite/pytest-dev
:alt: Discord
.. image:: https://img.shields.io/badge/Libera%20chat-%23pytest-orange
:target: https://web.libera.chat/#pytest
:alt: Libera chat
The ``pytest`` framework makes it easy to write small tests, yet
scales to support complex functional testing for applications and libraries.
An example of a simple test:
.. code-block:: python
# content of test_sample.py
def inc(x):
return x + 1
def test_answer():
assert inc(3) == 5
To execute it::
$ pytest
============================= test session starts =============================
collected 1 items
test_sample.py F
================================== FAILURES ===================================
_________________________________ test_answer _________________________________
def test_answer():
> assert inc(3) == 5
E assert 4 == 5
E + where 4 = inc(3)
test_sample.py:5: AssertionError
========================== 1 failed in 0.04 seconds ===========================
Thanks to ``pytest``'s detailed assertion introspection, you can simply use plain ``assert`` statements. See `getting-started <https://docs.pytest.org/en/stable/getting-started.html#our-first-test-run>`_ for more examples.
Features
--------
- Detailed info on failing `assert statements <https://docs.pytest.org/en/stable/how-to/assert.html>`_ (no need to remember ``self.assert*`` names)
- `Auto-discovery
<https://docs.pytest.org/en/stable/explanation/goodpractices.html#python-test-discovery>`_
of test modules and functions
- `Modular fixtures <https://docs.pytest.org/en/stable/explanation/fixtures.html>`_ for
managing small or parametrized long-lived test resources
- Can run `unittest <https://docs.pytest.org/en/stable/how-to/unittest.html>`_ (or trial)
test suites out of the box
- Python 3.10+ or PyPy3
- Rich plugin architecture, with over 1300+ `external plugins <https://docs.pytest.org/en/latest/reference/plugin_list.html>`_ and thriving community
Documentation
-------------
For full documentation, including installation, tutorials and PDF documents, please see https://docs.pytest.org/en/stable/.
Bugs/Requests
-------------
Please use the `GitHub issue tracker <https://github.com/pytest-dev/pytest/issues>`_ to submit bugs or request features.
Changelog
---------
Consult the `Changelog <https://docs.pytest.org/en/stable/changelog.html>`__ page for fixes and enhancements of each version.
Support pytest
--------------
`Open Collective`_ is an online funding platform for open and transparent communities.
It provides tools to raise money and share your finances in full transparency.
It is the platform of choice for individuals and companies that want to make one-time or
monthly donations directly to the project.
See more details in the `pytest collective`_.
.. _Open Collective: https://opencollective.com
.. _pytest collective: https://opencollective.com/pytest
pytest for enterprise
---------------------
Available as part of the Tidelift Subscription.
The maintainers of pytest and thousands of other packages are working with Tidelift to deliver commercial support and
maintenance for the open source dependencies you use to build your applications.
Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use.
`Learn more. <https://tidelift.com/subscription/pkg/pypi-pytest?utm_source=pypi-pytest&utm_medium=referral&utm_campaign=enterprise&utm_term=repo>`_
Security
^^^^^^^^
If you have found an issue that you believe is a security vulnerability, please do not create an issue -- instead, report it via a `new security advisory <https://github.com/pytest-dev/pytest/security/advisories/new>`__.
License
-------
Copyright Holger Krekel and others, 2004.
Distributed under the terms of the `MIT`_ license, pytest is free and open source software.
.. _`MIT`: https://github.com/pytest-dev/pytest/blob/main/LICENSE
@@ -0,0 +1,173 @@
../../../bin/py.test,sha256=vP5PBz-5CtmzX0Cpj3l89RpNZ6fAm0XOuNVMJqAZ3EU,290
../../../bin/pytest,sha256=vP5PBz-5CtmzX0Cpj3l89RpNZ6fAm0XOuNVMJqAZ3EU,290
__pycache__/py.cpython-311.pyc,,
_pytest/__init__.py,sha256=4IdRJhnW5XG2KlaJkOxn5_TC9WeQ5tXDSF7tbb4vEso,391
_pytest/__pycache__/__init__.cpython-311.pyc,,
_pytest/__pycache__/_argcomplete.cpython-311.pyc,,
_pytest/__pycache__/_version.cpython-311.pyc,,
_pytest/__pycache__/cacheprovider.cpython-311.pyc,,
_pytest/__pycache__/capture.cpython-311.pyc,,
_pytest/__pycache__/compat.cpython-311.pyc,,
_pytest/__pycache__/debugging.cpython-311.pyc,,
_pytest/__pycache__/deprecated.cpython-311.pyc,,
_pytest/__pycache__/doctest.cpython-311.pyc,,
_pytest/__pycache__/faulthandler.cpython-311.pyc,,
_pytest/__pycache__/fixtures.cpython-311.pyc,,
_pytest/__pycache__/freeze_support.cpython-311.pyc,,
_pytest/__pycache__/helpconfig.cpython-311.pyc,,
_pytest/__pycache__/hookspec.cpython-311.pyc,,
_pytest/__pycache__/junitxml.cpython-311.pyc,,
_pytest/__pycache__/legacypath.cpython-311.pyc,,
_pytest/__pycache__/logging.cpython-311.pyc,,
_pytest/__pycache__/main.cpython-311.pyc,,
_pytest/__pycache__/monkeypatch.cpython-311.pyc,,
_pytest/__pycache__/nodes.cpython-311.pyc,,
_pytest/__pycache__/outcomes.cpython-311.pyc,,
_pytest/__pycache__/pastebin.cpython-311.pyc,,
_pytest/__pycache__/pathlib.cpython-311.pyc,,
_pytest/__pycache__/pytester.cpython-311.pyc,,
_pytest/__pycache__/pytester_assertions.cpython-311.pyc,,
_pytest/__pycache__/python.cpython-311.pyc,,
_pytest/__pycache__/python_api.cpython-311.pyc,,
_pytest/__pycache__/raises.cpython-311.pyc,,
_pytest/__pycache__/recwarn.cpython-311.pyc,,
_pytest/__pycache__/reports.cpython-311.pyc,,
_pytest/__pycache__/runner.cpython-311.pyc,,
_pytest/__pycache__/scope.cpython-311.pyc,,
_pytest/__pycache__/setuponly.cpython-311.pyc,,
_pytest/__pycache__/setupplan.cpython-311.pyc,,
_pytest/__pycache__/skipping.cpython-311.pyc,,
_pytest/__pycache__/stash.cpython-311.pyc,,
_pytest/__pycache__/stepwise.cpython-311.pyc,,
_pytest/__pycache__/subtests.cpython-311.pyc,,
_pytest/__pycache__/terminal.cpython-311.pyc,,
_pytest/__pycache__/terminalprogress.cpython-311.pyc,,
_pytest/__pycache__/threadexception.cpython-311.pyc,,
_pytest/__pycache__/timing.cpython-311.pyc,,
_pytest/__pycache__/tmpdir.cpython-311.pyc,,
_pytest/__pycache__/tracemalloc.cpython-311.pyc,,
_pytest/__pycache__/unittest.cpython-311.pyc,,
_pytest/__pycache__/unraisableexception.cpython-311.pyc,,
_pytest/__pycache__/warning_types.cpython-311.pyc,,
_pytest/__pycache__/warnings.cpython-311.pyc,,
_pytest/_argcomplete.py,sha256=gh0pna66p4LVb2D8ST4568WGxvdInGT43m6slYhqNqU,3776
_pytest/_code/__init__.py,sha256=BKbowoYQADKjAJmTWdQ8SSQLbBBsh0-dZj3TGjtn6yM,521
_pytest/_code/__pycache__/__init__.cpython-311.pyc,,
_pytest/_code/__pycache__/code.cpython-311.pyc,,
_pytest/_code/__pycache__/source.cpython-311.pyc,,
_pytest/_code/code.py,sha256=Y-wD0g5h06wqDplUvnGmGd10LQCcJAmx4xaOKm-tkJY,58426
_pytest/_code/source.py,sha256=RvPQfzFE4-BdpapsUcsdL4msgeHnN-WnqGPkAyrPbAE,7859
_pytest/_io/__init__.py,sha256=pkLF29VEFr6Dlr3eOtJL8sf47RLFt1Jf4X1DZBPlYmc,190
_pytest/_io/__pycache__/__init__.cpython-311.pyc,,
_pytest/_io/__pycache__/pprint.cpython-311.pyc,,
_pytest/_io/__pycache__/saferepr.cpython-311.pyc,,
_pytest/_io/__pycache__/terminalwriter.cpython-311.pyc,,
_pytest/_io/__pycache__/wcwidth.cpython-311.pyc,,
_pytest/_io/pprint.py,sha256=h_y5zQmN2nLz1UWPhoJCvqYNU_HI2I4qtJmCfagL9OQ,19572
_pytest/_io/saferepr.py,sha256=xGNORj4B62E_xS2Qn29E5KpoLgw60q09b-AobW8ceqg,4920
_pytest/_io/terminalwriter.py,sha256=K0pB1pfAvrKBWFARKSobQ4wWi0pdmiBaGb3a_v_AAjQ,8994
_pytest/_io/wcwidth.py,sha256=cUEJ74UhweICwbKvU2q6noZcNgD0QlBEB9CfakGYaqA,1289
_pytest/_py/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
_pytest/_py/__pycache__/__init__.cpython-311.pyc,,
_pytest/_py/__pycache__/error.cpython-311.pyc,,
_pytest/_py/__pycache__/path.cpython-311.pyc,,
_pytest/_py/error.py,sha256=kGQ7F8_fZ6YVBhAx-u9mkTQBTx0qIxxnVMC0CgiOd70,3475
_pytest/_py/path.py,sha256=cqCn0amzKhqSqiW1Wzt4KqvFI2ncKBzGnwERUsWpC_0,49229
_pytest/_version.py,sha256=qSFl_XsOFH0OG4c_QuvofxCPHz1WsbU_5K01Kiet7Eo,520
_pytest/assertion/__init__.py,sha256=KmkIcXT6uS3Yg1K2C1Rth5-5NBGmwJljhKD4SgcHGsc,8081
_pytest/assertion/__pycache__/__init__.cpython-311.pyc,,
_pytest/assertion/__pycache__/_compare_any.cpython-311.pyc,,
_pytest/assertion/__pycache__/_compare_mapping.cpython-311.pyc,,
_pytest/assertion/__pycache__/_compare_sequence.cpython-311.pyc,,
_pytest/assertion/__pycache__/_compare_set.cpython-311.pyc,,
_pytest/assertion/__pycache__/_guards.cpython-311.pyc,,
_pytest/assertion/__pycache__/_typing.cpython-311.pyc,,
_pytest/assertion/__pycache__/compare_text.cpython-311.pyc,,
_pytest/assertion/__pycache__/highlight.cpython-311.pyc,,
_pytest/assertion/__pycache__/rewrite.cpython-311.pyc,,
_pytest/assertion/__pycache__/truncate.cpython-311.pyc,,
_pytest/assertion/__pycache__/util.cpython-311.pyc,,
_pytest/assertion/_compare_any.py,sha256=ltt0TiAj7LVVzz8D1-mm6vyM_iUPKO_1XNgjl5PYlMI,4959
_pytest/assertion/_compare_mapping.py,sha256=dKM5hvqjZF-WM0iHwE7lHj6miVaLTt7u0eQprp2G9pA,1680
_pytest/assertion/_compare_sequence.py,sha256=anxodI4FYyqMmnhKSgmc_AtK_obrHUoODBbBNyOlhoE,2947
_pytest/assertion/_compare_set.py,sha256=JRpz19ET_bi6eE9Z_uWxS_BzrEIyItG2hyXQls6InJQ,2667
_pytest/assertion/_guards.py,sha256=H6ahG_5JCwZhTg5lIk8D6vghUQdKfoOZGUwsT3OQCF4,1923
_pytest/assertion/_typing.py,sha256=9iznoFsKp847gY1iqtdL_ThIUZrYBAPa8N72O3dNpWg,338
_pytest/assertion/compare_text.py,sha256=4Q7bKW2N9d0u7kSA5ovamuG6LMvFX68ixMyORTpICMc,3385
_pytest/assertion/highlight.py,sha256=AVqS4X64Pg1aekXnOYRoeJigIADWwAdbdtG_9bk_3-c,327
_pytest/assertion/rewrite.py,sha256=F_Hu-9HC_lMmy3WS_zr5Knc1gs-dAXJ7CdOrhkkG7lA,47740
_pytest/assertion/truncate.py,sha256=7ki8tB0rwj7Z7-YCAADQRuB3Ro19O83y7XV3eTjeL1w,5156
_pytest/assertion/util.py,sha256=8u3kQ2jEBnTMmUODOlY0JTl0fpJCCUGRz-JLfurxPTM,7710
_pytest/cacheprovider.py,sha256=vZv7BDdkXaXQQnkvMLo3nSj_TB__rGgG9VQzBaMHNXk,22627
_pytest/capture.py,sha256=EgBNv_CrezQUH_U-M-YW2y6FfGlfZOZAYx9avjBhkUU,37228
_pytest/compat.py,sha256=QfcD7kYGIy4fxuqiE282BwDJCCRQNJEiGkNYYcPyFh4,10628
_pytest/config/__init__.py,sha256=mLBcLDfQnh1cBZde_C2a-Y1K_26kfeQQqOk5VkIIc8E,80947
_pytest/config/__pycache__/__init__.cpython-311.pyc,,
_pytest/config/__pycache__/argparsing.cpython-311.pyc,,
_pytest/config/__pycache__/exceptions.cpython-311.pyc,,
_pytest/config/__pycache__/findpaths.cpython-311.pyc,,
_pytest/config/argparsing.py,sha256=owNzoRCsVo51K1zFxOtmz6hZXyweqhv5ULH8UHCg0Jg,17795
_pytest/config/exceptions.py,sha256=6Vm9yzwUOxJGm17ZMGbw69v_i07mT1KmBwENM2scKhk,315
_pytest/config/findpaths.py,sha256=U10Unm85YuRCYLZkW7NUl24ZUx9d0kjhTufX__YciEg,12890
_pytest/debugging.py,sha256=_eJqifDKExFCOv4JhgFhBoDXYnswswHG1dcZICZTjg8,13853
_pytest/deprecated.py,sha256=fyTwqU-ftooJ8Pu8iy24TLqWXViUpZQV1qSrJJDqTio,5443
_pytest/doctest.py,sha256=BCYfWz3c4MNlhPK-QuKTjVoNvpFEFFAlM6k-jBQtrPk,25424
_pytest/faulthandler.py,sha256=1c7DpRtP0_C3zpFUSw1BORpAG8GsiDtJ9zCuWdEiLc0,4250
_pytest/fixtures.py,sha256=9dTT-EjZdBHkVtUEANOq7MGamwyQ3vkVHjle6JUgQrc,92893
_pytest/freeze_support.py,sha256=X94IxipqebeA_HgzJh8dbjqGnrtEQFuMIC5hK7SGWXw,1300
_pytest/helpconfig.py,sha256=ZKTM752i6PGvKK_EL2BaodnEwSVQia3G5KE2-8gaUHQ,10019
_pytest/hookspec.py,sha256=EgmFcQRGccJO0AEeK7fZSXY4AmXlc0ww-FZHlILm-I0,41840
_pytest/junitxml.py,sha256=VXuJeMZrgBD6_FCtpL9WMz-ZJ_MbK1kJ_kwanfGjwPA,25961
_pytest/legacypath.py,sha256=_l6v8akNMfTc5TAjvbc6M-_t157p9QE6-118WM0DRt8,16588
_pytest/logging.py,sha256=mtTD5YPCBal8NyZL9HlQPnTgJ89ouoGJlukjBiOAysI,36104
_pytest/main.py,sha256=juJyUFf_GBHirp698b77dRgZX48zP5-MoCTXakuAeA4,42771
_pytest/mark/__init__.py,sha256=GmScnssk8ecJLWLIa21bOGSNxL9D2smS8GH2h2rN4FE,9857
_pytest/mark/__pycache__/__init__.cpython-311.pyc,,
_pytest/mark/__pycache__/expression.cpython-311.pyc,,
_pytest/mark/__pycache__/structures.cpython-311.pyc,,
_pytest/mark/expression.py,sha256=7a5DoL-0T2rgl0dVH2wTnNvZhbimbirzM1LExXrB8n0,11250
_pytest/mark/structures.py,sha256=WY_ytEGT8emIaCV_9V9P_zknb8XVroQn_k3nF26hvJY,24633
_pytest/monkeypatch.py,sha256=tcQF7Vfb1Yrft_D65E-E1iQCmTxQBY4H8DOHKFwD3zM,15510
_pytest/nodes.py,sha256=RwHy-nTikrJVGueQ0m_kIbsl5eRZAiAmEHvQJBd80Sk,26286
_pytest/outcomes.py,sha256=qgLb81HNEQGnleP-9oOrL9eiwE65YYholmP1Hs6AwIE,8799
_pytest/pastebin.py,sha256=JtD5Q0Ub3EpIKQFEyoq27SU18KCTSMTO6aKtEcf0Z9Q,4281
_pytest/pathlib.py,sha256=yf533Mv1KvoRlv-Shw7ZGeCfJUwIJxCobtQX_TypAyk,37454
_pytest/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
_pytest/pytester.py,sha256=nnkdCjRGsEMk5wu5OXEvjUkABa0T60arMklZK6oI_xc,62905
_pytest/pytester_assertions.py,sha256=1IT16XrLbUoifFeEtOnPStiHZuIog0Dl3ECkpwmzo2Q,2253
_pytest/python.py,sha256=sESI9eRr8f_i6DRPgXVuELlw2_ry9_L00xK-zWQE33Y,67758
_pytest/python_api.py,sha256=y6ItF7Xe3Ms5vnHKlGt2W5mMTDBVrhra1FP--9hDSX0,35984
_pytest/raises.py,sha256=3CiAXx4cLbg18aUpAhjv7l1RDRkK0zPWFmPVm9bRNiw,59770
_pytest/recwarn.py,sha256=Djqyf2tzE9ie_xE2xM1gkT5ZH-WzKWHIfncRd48tyQY,13875
_pytest/reports.py,sha256=LpJypnzeOLkl66JKKIsu9390HA2qItpvvOU-5uWPpB0,23230
_pytest/runner.py,sha256=yNf9VTwFFveIRQLuDnlU61pbFULyH8tcQ1dQDtL-FXA,20346
_pytest/scope.py,sha256=eEmRJvR0ujeH_RypUk3PhYOytQX1Yyr0keocRYpyrio,2736
_pytest/setuponly.py,sha256=BsRrC4ERDVr42-2G_L0AxhNU4XVwbMsy5S0lOvKr8wA,3167
_pytest/setupplan.py,sha256=l-ycFNxDZPyY52wh4f7yaqhzZ7SW1ijSKnQLmqzDZWA,1184
_pytest/skipping.py,sha256=zCEC9fjRlHj5HOdxF8EJNIuHZq4E68S4wz5fmSPlCu4,10788
_pytest/stash.py,sha256=5pE3kDx4q855TW9aVvYTdrkkKlMDU6-xiX4luKpJEgI,3090
_pytest/stepwise.py,sha256=kD81DrnhnclKBmMfauwQmbeMbYUvuw07w5WnNkmIdEQ,7689
_pytest/subtests.py,sha256=9RSIO60GqEzsDX3cHdjOjBblaAWX-fxam9iDa4ePkqQ,13507
_pytest/terminal.py,sha256=KMSp68oCQzhbFU9H7Lg7GKHfQV4LkS69lwecXqADZFk,65489
_pytest/terminalprogress.py,sha256=_IO3vRGVATz3RkkacqIAaCUC4-Rq2pTEANUAY66dEwQ,1153
_pytest/threadexception.py,sha256=hTccpzZUrrQkDROVFAqHgXwAU481ca4Mq4CA4YB7my4,4953
_pytest/timing.py,sha256=Yt4oVx5SljUGJLwY_iCW8v6wZKVfM-HMjR4iPAR9udQ,3196
_pytest/tmpdir.py,sha256=UJn3HYlBMZHJ51FcnU_p_HCDu3Mwbyzx9zqfichi7ZA,13271
_pytest/tracemalloc.py,sha256=lCUB_YUAb6R1vqq_b-LSYSXy-Tidbn2m7tfzmWAUrjk,778
_pytest/unittest.py,sha256=JGV7bEl-rL9QqXhxNZizuu1MBcKfHAGJFWPP7-0RkiQ,25176
_pytest/unraisableexception.py,sha256=6J8X5Yy00cnsTDLcrbTjN3Fmuar9f48MXRlBCieYezI,6545
_pytest/warning_types.py,sha256=jie-Um8DCyeYFk_YUREyovRHtvXvaVg2Mii_l4mY7bU,4241
_pytest/warnings.py,sha256=gkpvnw9CM8XkdBvDfvNmYMY7tO8geqkQZMCAtppNrp8,5239
py.py,sha256=txZ1tdmEW6CBTp6Idn-I2sOzzA0xKNoCi9Re27Uj6HE,329
pytest-9.1.1.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
pytest-9.1.1.dist-info/METADATA,sha256=xdAyUYASeJyryHDUZYmso67aNs-fpDme6IvaPRBDhFE,7586
pytest-9.1.1.dist-info/RECORD,,
pytest-9.1.1.dist-info/WHEEL,sha256=aeYiig01lYGDzBgS8HxWXOg3uV61G9ijOsup-k9o1sk,91
pytest-9.1.1.dist-info/entry_points.txt,sha256=shtd5aQM5jcu_2UNh_5M4Wa2YlkKMHU14Xm_xsjSpNY,95
pytest-9.1.1.dist-info/licenses/LICENSE,sha256=yoNqX57Mo7LzUCMPqiCkj7ixRWU7VWjXhIYt-GRwa5s,1091
pytest-9.1.1.dist-info/top_level.txt,sha256=yyhjvmXH7-JOaoQIdmNQHPuoBCxOyXS3jIths_6C8A4,18
pytest/__init__.py,sha256=7jeIXJWD-EM5BoTftJaQf4egkFEo56PPStIn9J_zTC0,5644
pytest/__main__.py,sha256=N_i2o98a73Eza86F42bblo7eFT3XKtTmC-v_eeJ53EA,175
pytest/__pycache__/__init__.cpython-311.pyc,,
pytest/__pycache__/__main__.cpython-311.pyc,,
pytest/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -0,0 +1,5 @@
Wheel-Version: 1.0
Generator: setuptools (82.0.1)
Root-Is-Purelib: true
Tag: py3-none-any
@@ -0,0 +1,3 @@
[console_scripts]
py.test = _pytest.config:_console_main
pytest = _pytest.config:_console_main
@@ -0,0 +1,21 @@
The MIT License (MIT)
Copyright (c) 2004 Holger Krekel and others
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
of the Software, and to permit persons to whom the Software is furnished to do
so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
@@ -0,0 +1,3 @@
_pytest
py
pytest