{ "info": { "author": "Timothy Crosley", "author_email": "timothy.crosley@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "[![hypothesis-auto - Fully Automatic Tests for Type Annotated Functions Using Hypothesis.](https://raw.github.com/timothycrosley/hypothesis-auto/master/art/logo_large.png)](https://timothycrosley.github.io/hypothesis-auto/)\n_________________\n\n[![PyPI version](https://badge.fury.io/py/hypothesis-auto.svg)](http://badge.fury.io/py/hypothesis-auto)\n[![Build Status](https://travis-ci.org/timothycrosley/hypothesis-auto.svg?branch=master)](https://travis-ci.org/timothycrosley/hypothesis-auto)\n[![codecov](https://codecov.io/gh/timothycrosley/hypothesis-auto/branch/master/graph/badge.svg)](https://codecov.io/gh/timothycrosley/hypothesis-auto)\n[![Join the chat at https://gitter.im/timothycrosley/hypothesis-auto](https://badges.gitter.im/timothycrosley/hypothesis-auto.svg)](https://gitter.im/timothycrosley/hypothesis-auto?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)\n[![License](https://img.shields.io/github/license/mashape/apistatus.svg)](https://pypi.python.org/pypi/hypothesis-auto/)\n[![Downloads](https://pepy.tech/badge/hypothesis-auto)](https://pepy.tech/project/hypothesis-auto)\n_________________\n\n[Read Latest Documentation](https://timothycrosley.github.io/hypothesis-auto/) - [Browse GitHub Code Repository](https://github.com/timothycrosley/hypothesis-auto/)\n_________________\n\n**hypothesis-auto** is an extension for the [Hypothesis](https://hypothesis.readthedocs.io/en/latest/) project that enables fully automatic tests for type annotated functions.\n\n[![Hypothesis Pytest Auto Example](https://raw.github.com/timothycrosley/hypothesis-auto/master/art/demo.gif)](https://github.com/timothycrosley/hypothesis-auto/blob/master/art/demo.gif)\n\nKey Features:\n\n* **Type Annotation Powered**: Utilize your function's existing type annotations to build dozens of test cases automatically.\n* **Low Barrier**: Start utilizing property-based testing in the lowest barrier way possible. Just run `auto_test(FUNCTION)` to run dozens of test.\n* **pytest Compatible**: Built-in compatibility with the popular [pytest](https://docs.pytest.org/en/latest/) testing framework. This means that you can turn your automatically generated tests into individual pytest test cases with one line.\n* **Scales Up**: As you find your self needing to customize your auto_test cases, you can easily utilize all the features of [Hypothesis](https://hypothesis.readthedocs.io/en/latest/), including custom strategies per a parameter.\n\n## Installation:\n\nTo get started - install `hypothesis-auto` into your projects virtual environment:\n\n`pip3 install hypothesis-auto`\n\nOR\n\n`poetry add hypothesis-auto`\n\nOR\n\n`pipenv install hypothesis-auto`\n\n## Usage Examples:\n\n!!! warning\n In old usage examples you will see `_` prefixed parameters like `_auto_verify=`. This was done to avoid conflicting with existing function parameters.\n Based on community feedback the project switched to `_` suffixes, such as `auto_verify_=` to keep the likely hood of conflicting low while\n avoiding the connotation of private parameters.\n\n### Framework independent usage\n\n#### Basic `auto_test` usage:\n\n```python3\nfrom hypothesis_auto import auto_test\n\n\ndef add(number_1: int, number_2: int = 1) -> int:\n return number_1 + number_2\n\n\nauto_test(add) # 50 property based scenarios are generated and ran against add\nauto_test(add, auto_runs_=1_000) # Let's make that 1,000\n```\n\n#### Adding an allowed exception:\n\n```python3\nfrom hypothesis_auto import auto_test\n\n\ndef divide(number_1: int, number_2: int) -> int:\n return number_1 / number_2\n\nauto_test(divide)\n\n-> 1012 raise the_error_hypothesis_found\n 1013\n 1014 for attrib in dir(test):\n\n in divide(number_1, number_2)\n 1 def divide(number_1: int, number_2: int) -> int:\n----> 2 return number_1 / number_2\n 3\n\n0/0\n\nZeroDivisionError: division by zero\n\n\nauto_test(divide, auto_allow_exceptions_=(ZeroDivisionError, ))\n```\n\n#### Using `auto_test` with a custom verification method:\n\n```python3\nfrom hypothesis_auto import Scenario, auto_test\n\n\ndef add(number_1: int, number_2: int = 1) -> int:\n return number_1 + number_2\n\n\ndef my_custom_verifier(scenario: Scenario):\n if scenario.kwargs[\"number_1\"] > 0 and scenario.kwargs[\"number_2\"] > 0:\n assert scenario.result > scenario.kwargs[\"number_1\"]\n assert scenario.result > scenario.kwargs[\"number_1\"]\n elif scenario.kwargs[\"number_1\"] < 0 and scenario.kwargs[\"number_2\"] < 0:\n assert scenario.result < scenario.kwargs[\"number_1\"]\n assert scenario.result < scenario.kwargs[\"number_1\"]\n else:\n assert scenario.result >= min(scenario.kwargs.values())\n assert scenario.result <= max(scenario.kwargs.values())\n\n\nauto_test(add, auto_verify_=my_custom_verifier)\n```\n\nCustom verification methods should take a single [Scenario](https://timothycrosley.github.io/hypothesis-auto/reference/hypothesis_auto/tester/#scenario) and raise an exception to signify errors.\n\nFor the full set of parameters, you can pass into auto_test see its [API reference documentation](https://timothycrosley.github.io/hypothesis-auto/reference/hypothesis_auto/tester/).\n\n### pytest usage\n\n#### Using `auto_pytest_magic` to auto-generate dozens of pytest test cases:\n\n```python3\nfrom hypothesis_auto import auto_pytest_magic\n\n\ndef add(number_1: int, number_2: int = 1) -> int:\n return number_1 + number_2\n\n\nauto_pytest_magic(add)\n```\n\n#### Using `auto_pytest` to run dozens of test case within a temporary directory:\n\n```python3\nfrom hypothesis_auto import auto_pytest\n\n\ndef add(number_1: int, number_2: int = 1) -> int:\n return number_1 + number_2\n\n\n@auto_pytest()\ndef test_add(test_case, tmpdir):\n tmpdir.mkdir().chdir()\n test_case()\n```\n\n#### Using `auto_pytest_magic` with a custom verification method:\n\n```python3\nfrom hypothesis_auto import Scenario, auto_pytest\n\n\ndef add(number_1: int, number_2: int = 1) -> int:\n return number_1 + number_2\n\n\ndef my_custom_verifier(scenario: Scenario):\n if scenario.kwargs[\"number_1\"] > 0 and scenario.kwargs[\"number_2\"] > 0:\n assert scenario.result > scenario.kwargs[\"number_1\"]\n assert scenario.result > scenario.kwargs[\"number_1\"]\n elif scenario.kwargs[\"number_1\"] < 0 and scenario.kwargs[\"number_2\"] < 0:\n assert scenario.result < scenario.kwargs[\"number_1\"]\n assert scenario.result < scenario.kwargs[\"number_1\"]\n else:\n assert scenario.result >= min(scenario.kwargs.values())\n assert scenario.result <= max(scenario.kwargs.values())\n\n\nauto_pytest_magic(add, auto_verify_=my_custom_verifier)\n```\n\nCustom verification methods should take a single [Scenario](https://timothycrosley.github.io/hypothesis-auto/reference/hypothesis_auto/tester/#scenario) and raise an exception to signify errors.\n\nFor the full reference of the pytest integration API see the [API reference documentation](https://timothycrosley.github.io/hypothesis-auto/reference/hypothesis_auto/pytest/).\n\n## Why Create hypothesis-auto?\n\nI wanted a no/low resistance way to start incorporating property-based tests across my projects. Such a solution that also encouraged the use of type hints was a win/win for me.\n\nI hope you too find `hypothesis-auto` useful!\n\n~Timothy Crosley\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "", "keywords": "", "license": "MIT", "maintainer": "Timothy Crosley", "maintainer_email": "timothy.crosley@gmail.com", "name": "hypothesis-auto", "package_url": "https://pypi.org/project/hypothesis-auto/", "platform": "", "project_url": "https://pypi.org/project/hypothesis-auto/", "project_urls": null, "release_url": "https://pypi.org/project/hypothesis-auto/1.1.2/", "requires_dist": [ "pydantic (>=0.32.2,<0.33.0)", "hypothesis (>=4.36,<5.0)", "pytest (>=4.0.0,<5.0.0); extra == \"pytest\"" ], "requires_python": ">=3.6,<4.0", "summary": "Extends Hypothesis to add fully automatic testing of type annotated functions", "version": "1.1.2" }, "last_serial": 5883443, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "38ac285d14283d71d8a5344296eefbfc", "sha256": "b1c8f2826879ce183aeece602467ffc68b722162680806da7c9b14e1e8133b83" }, "downloads": -1, "filename": "hypothesis_auto-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "38ac285d14283d71d8a5344296eefbfc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 2453, "upload_time": "2019-09-13T06:41:15", "url": "https://files.pythonhosted.org/packages/a8/43/4825910796ed0a9b150c6b9d9a432793f5281b983545d04c8ce2f18e7740/hypothesis_auto-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "82b6aab01560d8e63f663b8363c4d781", "sha256": "d122db3f8315453871302a594106974d847df384b0d6b43cb878d297163e57d1" }, "downloads": -1, "filename": "hypothesis-auto-0.0.1.tar.gz", "has_sig": false, "md5_digest": "82b6aab01560d8e63f663b8363c4d781", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 2379, "upload_time": "2019-09-13T06:41:13", "url": "https://files.pythonhosted.org/packages/fc/1f/585d0f94bf2b37f35aad249fc8b9aa986bbdbb0fa66ca6553931c8181c50/hypothesis-auto-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "efdf05acb489e087393dd64eacf5f40c", "sha256": "57bcd9585c17efcd9d930d5d2b224c5c5ebff486b8e311ba3d3dd4ed44c9eae6" }, "downloads": -1, "filename": "hypothesis_auto-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "efdf05acb489e087393dd64eacf5f40c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 3472, "upload_time": "2019-09-13T09:35:47", "url": "https://files.pythonhosted.org/packages/c8/92/4258195f509ffdadb7c5054acc9b4105a066d2e4647d7b6469f6a11c7ce9/hypothesis_auto-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5717bfafdf51c4936415905a2d8c0eb3", "sha256": "704704dc3c9d0e17506cbf92bfde6e2570d24b239884e274bbdc08be1a99fa4c" }, "downloads": -1, "filename": "hypothesis-auto-0.0.2.tar.gz", "has_sig": false, "md5_digest": "5717bfafdf51c4936415905a2d8c0eb3", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 3188, "upload_time": "2019-09-13T09:35:45", "url": "https://files.pythonhosted.org/packages/7f/91/81b1de6ed1309133031bdb6eed22897b126e21ab546c70a2d603c86977b4/hypothesis-auto-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "5ee6a1842c120f299de0303ba3a5dc9f", "sha256": "692c193d1faa63de4359dbdc215e080b76a59c9579ec415fe4f8e5c69ed9dc57" }, "downloads": -1, "filename": "hypothesis_auto-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "5ee6a1842c120f299de0303ba3a5dc9f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 3461, "upload_time": "2019-09-15T03:57:56", "url": "https://files.pythonhosted.org/packages/7b/3d/6d3a9af4df1792c440bb4a827ad1401526dc24dffc23a7e0a156594b8984/hypothesis_auto-0.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3dd4f1540eb559ac299e580085d13ca4", "sha256": "bdf051576eea9d28f9d03b18b1d0689c3d932ece1cceef7f97956babde2cf2cf" }, "downloads": -1, "filename": "hypothesis-auto-0.0.3.tar.gz", "has_sig": false, "md5_digest": "3dd4f1540eb559ac299e580085d13ca4", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 3169, "upload_time": "2019-09-15T03:57:55", "url": "https://files.pythonhosted.org/packages/df/5f/2dc3ec22283267fcc2557f6d3bdfcc4893b1b768a00d409fc66f21fdfdeb/hypothesis-auto-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "18ca579119e01f45b8f0c5f8130babdd", "sha256": "2d1214748a18a4afcb24d72a3a7e1bf7c67dc7e051b76a60965ec96a3441c7ae" }, "downloads": -1, "filename": "hypothesis_auto-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "18ca579119e01f45b8f0c5f8130babdd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 3624, "upload_time": "2019-09-15T20:15:01", "url": "https://files.pythonhosted.org/packages/68/f7/f6d1c1bbb3effe7dc3eab232dfc22ba653cd6c0734a158487a44c5bfab14/hypothesis_auto-0.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1943c532aa32dc9feb094b90b84a245a", "sha256": "ca581f6f08ed3a36bca2390bdf8044dcdd7f2cd5c9645d410fceb78e534fb1c3" }, "downloads": -1, "filename": "hypothesis-auto-0.0.4.tar.gz", "has_sig": false, "md5_digest": "1943c532aa32dc9feb094b90b84a245a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 3383, "upload_time": "2019-09-15T20:14:59", "url": "https://files.pythonhosted.org/packages/97/52/2badac907181ed21b67b8e59a441ef73bc1ef64f02a0a5e852a70eb7caa7/hypothesis-auto-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "41ef25830384a31c2bab04d882c15c8e", "sha256": "4078d7cb0178616ee9f53105af7819f3178c6afb371a4a1908a4fb8adb6fc7fc" }, "downloads": -1, "filename": "hypothesis_auto-0.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "41ef25830384a31c2bab04d882c15c8e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 4468, "upload_time": "2019-09-17T07:43:06", "url": "https://files.pythonhosted.org/packages/fd/b8/9e17f45342a5d679a49fb12b887e482c24b6f2d09b59ede10f907b9841d5/hypothesis_auto-0.0.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dc1fb5052a42df374eda2fc61950e2b5", "sha256": "5db841b6bddc76b9ec1b302fa0b959785ae1062c4310014d8c9bf4f24c9be7f5" }, "downloads": -1, "filename": "hypothesis-auto-0.0.5.tar.gz", "has_sig": false, "md5_digest": "dc1fb5052a42df374eda2fc61950e2b5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 4411, "upload_time": "2019-09-17T07:43:04", "url": "https://files.pythonhosted.org/packages/66/a0/a916255fa52c8e6bfa73653086c4211afaf2b3f6ffa753ee85d76b46b6eb/hypothesis-auto-0.0.5.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "413df031e762af851d3445ac7b6db27f", "sha256": "f54f3009b513704f53bcd44f6fe6e2e0e4662aadaa70bc66365bef816cf973db" }, "downloads": -1, "filename": "hypothesis_auto-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "413df031e762af851d3445ac7b6db27f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 6451, "upload_time": "2019-09-18T06:43:44", "url": "https://files.pythonhosted.org/packages/c7/ea/bb41a5b8be0e7cdbbfc542813dcf6997b7de9be76cfbc7a6f1fa1a22ac47/hypothesis_auto-1.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "589a903c7346178cca3a3e560ec98c2c", "sha256": "f8119f4763cbf211e198be96d368aa1b6dd65a17ff59dd08f68d988c1ab2ce15" }, "downloads": -1, "filename": "hypothesis-auto-1.0.0.tar.gz", "has_sig": false, "md5_digest": "589a903c7346178cca3a3e560ec98c2c", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 5618, "upload_time": "2019-09-18T06:43:42", "url": "https://files.pythonhosted.org/packages/7c/a3/53891a0337fe27c0a537fef285ac56edec6cca4ab3618ad813773bf67613/hypothesis-auto-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "af8310ddc340a18386608837becfa969", "sha256": "d19849bfe75398e1fd1bc446806248ae591f87d08899a1cfd7ae4f6e8a11cfa1" }, "downloads": -1, "filename": "hypothesis_auto-1.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "af8310ddc340a18386608837becfa969", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 7113, "upload_time": "2019-09-18T09:00:43", "url": "https://files.pythonhosted.org/packages/42/25/b88a036a768d9d214313b42f8267f35050c1eb5e744d8e9394b366ab897f/hypothesis_auto-1.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b77bfce16c3c2f7d4ddc577eae6d9357", "sha256": "4e2d123b0830c5e1694d6b91262f51e7c38f2efde282359d2a5eff34a93f4196" }, "downloads": -1, "filename": "hypothesis-auto-1.0.1.tar.gz", "has_sig": false, "md5_digest": "b77bfce16c3c2f7d4ddc577eae6d9357", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 6448, "upload_time": "2019-09-18T09:00:41", "url": "https://files.pythonhosted.org/packages/19/4b/efd9274147089a5e469a0ef32ee7264dd96529e510e03e636be187cef8c7/hypothesis-auto-1.0.1.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "43424b70dcd94b1923ecff24df774e73", "sha256": "e090155779abee903902e5357a6e414dc37a00aa3e735dff943d85f8b45095b7" }, "downloads": -1, "filename": "hypothesis_auto-1.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "43424b70dcd94b1923ecff24df774e73", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 7710, "upload_time": "2019-09-19T05:58:37", "url": "https://files.pythonhosted.org/packages/8b/23/787e1334e42212f2353ad80e00bb0d9455e2ceac50a640b6e863cde3c612/hypothesis_auto-1.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a2c7759c144b1fa34f4e088649048dda", "sha256": "9b3d2fa402f60461ef6c51740788c01b072b44fdc1715b9da75f0e94fa78fb5f" }, "downloads": -1, "filename": "hypothesis-auto-1.1.0.tar.gz", "has_sig": false, "md5_digest": "a2c7759c144b1fa34f4e088649048dda", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 7429, "upload_time": "2019-09-19T05:58:35", "url": "https://files.pythonhosted.org/packages/9f/02/4f8f952ec54976524359d99cb2fdd90594b8f351575e71f967a015526fc4/hypothesis-auto-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "4ad8c01e9fdf22d37438a88a000277b4", "sha256": "ccee0d9b19e3c793a5e08a40f2a897ef1cd7fdc589e2094d8225f2cc2f565bfa" }, "downloads": -1, "filename": "hypothesis_auto-1.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "4ad8c01e9fdf22d37438a88a000277b4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 7710, "upload_time": "2019-09-19T07:30:09", "url": "https://files.pythonhosted.org/packages/84/09/36de829bb4b51875cdca5890b69557a6e9e1c0dcf1a9cff3d4627e251c83/hypothesis_auto-1.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "40929a4ae4bc4c6fff7d297408a11161", "sha256": "8861bb9fc60f470fbe4ed6bf6b0a3e2862366c944be79830fc732d0ecf48532a" }, "downloads": -1, "filename": "hypothesis-auto-1.1.1.tar.gz", "has_sig": false, "md5_digest": "40929a4ae4bc4c6fff7d297408a11161", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 7506, "upload_time": "2019-09-19T07:30:07", "url": "https://files.pythonhosted.org/packages/42/e1/8bf7f72bcb1b8618492dfb93ab627099aa8837fa7c339193bf13e04ea8ec/hypothesis-auto-1.1.1.tar.gz" } ], "1.1.2": [ { "comment_text": "", "digests": { "md5": "3aa3cb2e8799eb40d442feaa0ff98e48", "sha256": "1560f79777c194a90111a78f4b8daf2033162f2293a2c3e75cf7f337afb2ce05" }, "downloads": -1, "filename": "hypothesis_auto-1.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "3aa3cb2e8799eb40d442feaa0ff98e48", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 7719, "upload_time": "2019-09-25T06:57:58", "url": "https://files.pythonhosted.org/packages/30/1b/645191e4d560af96a3cb3d1812fcf60430ec5f09360ad3581cbbf5d31ca6/hypothesis_auto-1.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1d6a8cb8be743ff23f51a919a90eb7f0", "sha256": "5a64727de6c12a23da1550a9de281efd7409578a768f1be6cf44b9be98deaccf" }, "downloads": -1, "filename": "hypothesis-auto-1.1.2.tar.gz", "has_sig": false, "md5_digest": "1d6a8cb8be743ff23f51a919a90eb7f0", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 7498, "upload_time": "2019-09-25T06:57:56", "url": "https://files.pythonhosted.org/packages/d9/7a/6e982a7a5ec57e46b07ab56a37a09273da10ec97061586f33971e9a34ad4/hypothesis-auto-1.1.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "3aa3cb2e8799eb40d442feaa0ff98e48", "sha256": "1560f79777c194a90111a78f4b8daf2033162f2293a2c3e75cf7f337afb2ce05" }, "downloads": -1, "filename": "hypothesis_auto-1.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "3aa3cb2e8799eb40d442feaa0ff98e48", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 7719, "upload_time": "2019-09-25T06:57:58", "url": "https://files.pythonhosted.org/packages/30/1b/645191e4d560af96a3cb3d1812fcf60430ec5f09360ad3581cbbf5d31ca6/hypothesis_auto-1.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1d6a8cb8be743ff23f51a919a90eb7f0", "sha256": "5a64727de6c12a23da1550a9de281efd7409578a768f1be6cf44b9be98deaccf" }, "downloads": -1, "filename": "hypothesis-auto-1.1.2.tar.gz", "has_sig": false, "md5_digest": "1d6a8cb8be743ff23f51a919a90eb7f0", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 7498, "upload_time": "2019-09-25T06:57:56", "url": "https://files.pythonhosted.org/packages/d9/7a/6e982a7a5ec57e46b07ab56a37a09273da10ec97061586f33971e9a34ad4/hypothesis-auto-1.1.2.tar.gz" } ] }