METADATA 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. Metadata-Version: 2.1
  2. Name: hypothesis
  3. Version: 6.112.5
  4. Summary: A library for property-based testing
  5. Home-page: https://hypothesis.works
  6. Author: David R. MacIver and Zac Hatfield-Dodds
  7. Author-email: david@drmaciver.com
  8. License: MPL-2.0
  9. Project-URL: Source, https://github.com/HypothesisWorks/hypothesis/tree/master/hypothesis-python
  10. Project-URL: Changelog, https://hypothesis.readthedocs.io/en/latest/changes.html
  11. Project-URL: Documentation, https://hypothesis.readthedocs.io
  12. Project-URL: Issues, https://github.com/HypothesisWorks/hypothesis/issues
  13. Keywords: python testing fuzzing property-based-testing
  14. Classifier: Development Status :: 5 - Production/Stable
  15. Classifier: Framework :: Hypothesis
  16. Classifier: Framework :: Pytest
  17. Classifier: Intended Audience :: Developers
  18. Classifier: License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)
  19. Classifier: Operating System :: Unix
  20. Classifier: Operating System :: POSIX
  21. Classifier: Operating System :: Microsoft :: Windows
  22. Classifier: Programming Language :: Python
  23. Classifier: Programming Language :: Python :: 3
  24. Classifier: Programming Language :: Python :: 3 :: Only
  25. Classifier: Programming Language :: Python :: 3.8
  26. Classifier: Programming Language :: Python :: 3.9
  27. Classifier: Programming Language :: Python :: 3.10
  28. Classifier: Programming Language :: Python :: 3.11
  29. Classifier: Programming Language :: Python :: 3.12
  30. Classifier: Programming Language :: Python :: Implementation :: CPython
  31. Classifier: Programming Language :: Python :: Implementation :: PyPy
  32. Classifier: Topic :: Education :: Testing
  33. Classifier: Topic :: Software Development :: Testing
  34. Classifier: Typing :: Typed
  35. Requires-Python: >=3.8
  36. Description-Content-Type: text/x-rst
  37. License-File: LICENSE.txt
  38. Requires-Dist: attrs>=22.2.0
  39. Requires-Dist: sortedcontainers<3.0.0,>=2.1.0
  40. Requires-Dist: exceptiongroup>=1.0.0; python_version < "3.11"
  41. Provides-Extra: all
  42. Requires-Dist: black>=19.10b0; extra == "all"
  43. Requires-Dist: click>=7.0; extra == "all"
  44. Requires-Dist: crosshair-tool>=0.0.73; extra == "all"
  45. Requires-Dist: django>=3.2; extra == "all"
  46. Requires-Dist: dpcontracts>=0.4; extra == "all"
  47. Requires-Dist: hypothesis-crosshair>=0.0.14; extra == "all"
  48. Requires-Dist: lark>=0.10.1; extra == "all"
  49. Requires-Dist: libcst>=0.3.16; extra == "all"
  50. Requires-Dist: numpy>=1.17.3; extra == "all"
  51. Requires-Dist: pandas>=1.1; extra == "all"
  52. Requires-Dist: pytest>=4.6; extra == "all"
  53. Requires-Dist: python-dateutil>=1.4; extra == "all"
  54. Requires-Dist: pytz>=2014.1; extra == "all"
  55. Requires-Dist: redis>=3.0.0; extra == "all"
  56. Requires-Dist: rich>=9.0.0; extra == "all"
  57. Requires-Dist: backports.zoneinfo>=0.2.1; python_version < "3.9" and extra == "all"
  58. Requires-Dist: tzdata>=2024.2; (sys_platform == "win32" or sys_platform == "emscripten") and extra == "all"
  59. Provides-Extra: cli
  60. Requires-Dist: click>=7.0; extra == "cli"
  61. Requires-Dist: black>=19.10b0; extra == "cli"
  62. Requires-Dist: rich>=9.0.0; extra == "cli"
  63. Provides-Extra: codemods
  64. Requires-Dist: libcst>=0.3.16; extra == "codemods"
  65. Provides-Extra: crosshair
  66. Requires-Dist: hypothesis-crosshair>=0.0.14; extra == "crosshair"
  67. Requires-Dist: crosshair-tool>=0.0.73; extra == "crosshair"
  68. Provides-Extra: dateutil
  69. Requires-Dist: python-dateutil>=1.4; extra == "dateutil"
  70. Provides-Extra: django
  71. Requires-Dist: django>=3.2; extra == "django"
  72. Provides-Extra: dpcontracts
  73. Requires-Dist: dpcontracts>=0.4; extra == "dpcontracts"
  74. Provides-Extra: ghostwriter
  75. Requires-Dist: black>=19.10b0; extra == "ghostwriter"
  76. Provides-Extra: lark
  77. Requires-Dist: lark>=0.10.1; extra == "lark"
  78. Provides-Extra: numpy
  79. Requires-Dist: numpy>=1.17.3; extra == "numpy"
  80. Provides-Extra: pandas
  81. Requires-Dist: pandas>=1.1; extra == "pandas"
  82. Provides-Extra: pytest
  83. Requires-Dist: pytest>=4.6; extra == "pytest"
  84. Provides-Extra: pytz
  85. Requires-Dist: pytz>=2014.1; extra == "pytz"
  86. Provides-Extra: redis
  87. Requires-Dist: redis>=3.0.0; extra == "redis"
  88. Provides-Extra: zoneinfo
  89. Requires-Dist: backports.zoneinfo>=0.2.1; python_version < "3.9" and extra == "zoneinfo"
  90. Requires-Dist: tzdata>=2024.2; (sys_platform == "win32" or sys_platform == "emscripten") and extra == "zoneinfo"
  91. ==========
  92. Hypothesis
  93. ==========
  94. Hypothesis is an advanced testing library for Python. It lets you write tests which
  95. are parametrized by a source of examples, and then generates simple and comprehensible
  96. examples that make your tests fail. This lets you find more bugs in your code with less
  97. work.
  98. e.g.
  99. .. code-block:: python
  100. @given(st.lists(st.floats(allow_nan=False, allow_infinity=False), min_size=1))
  101. def test_mean(xs):
  102. assert min(xs) <= mean(xs) <= max(xs)
  103. .. code-block::
  104. Falsifying example: test_mean(
  105. xs=[1.7976321109618856e+308, 6.102390043022755e+303]
  106. )
  107. Hypothesis is extremely practical and advances the state of the art of
  108. unit testing by some way. It's easy to use, stable, and powerful. If
  109. you're not using Hypothesis to test your project then you're missing out.
  110. ------------------------
  111. Quick Start/Installation
  112. ------------------------
  113. If you just want to get started:
  114. .. code-block::
  115. pip install hypothesis
  116. -----------------
  117. Links of interest
  118. -----------------
  119. The main Hypothesis site is at `hypothesis.works <https://hypothesis.works/>`_, and contains a lot
  120. of good introductory and explanatory material.
  121. Extensive documentation and examples of usage are `available at readthedocs <https://hypothesis.readthedocs.io/en/latest/>`_.
  122. If you want to talk to people about using Hypothesis, `we have both an IRC channel
  123. and a mailing list <https://hypothesis.readthedocs.io/en/latest/community.html>`_.
  124. If you want to receive occasional updates about Hypothesis, including useful tips and tricks, there's a
  125. `TinyLetter mailing list to sign up for them <https://tinyletter.com/DRMacIver/>`_.
  126. If you want to contribute to Hypothesis, `instructions are here <https://github.com/HypothesisWorks/hypothesis-python/blob/master/CONTRIBUTING.rst>`_.
  127. If you want to hear from people who are already using Hypothesis, some of them `have written
  128. about it <https://hypothesis.readthedocs.io/en/latest/endorsements.html>`_.
  129. If you want to create a downstream package of Hypothesis, please read `these guidelines for packagers <https://hypothesis.readthedocs.io/en/latest/packaging.html>`_.