./devel/py-hypothesis, Python library for property based testing

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 3.11.0, Package name: py27-hypothesis-3.11.0, Maintainer: pkgsrc-users

Hypothesis is a library for testing your Python code against a much
larger range of examples than you would ever want to write by hand.
It's based on the Haskell library, Quickcheck, and is designed to
integrate seamlessly into your existing Python unit testing work

Hypothesis is both extremely practical and also advances the state
of the art of unit testing by some way. It's easy to use, stable,
and extremely powerful. If you're not using Hypothesis to test your
project then you're missing out.

Required to run:
[devel/py-setuptools] [databases/py-sqlite3] [lang/python27]

Required to build:

Master sites:

SHA1: f8d5c221e711b6eb1837bcb8a7d4c0419b50b282
RMD160: 40ae74d7c1f931b30acf46d15794d60eed1f73d9
Filesize: 81.241 KB

Version history: (Expand)

CVS history: (Expand)

   2017-05-24 13:28:37 by Adam Ciarcinski | Files touched by this commit (3)
Log message:
Changes 3.11.0:

This is a feature release, adding datetime-related strategies to the core strategies.

extra.pytz.timezones allows you to sample pytz timezones from the Olsen \ 
database. Use directly in a recipe for tz-aware datetimes, or compose with \ 
st.none() to allow a mix of aware and naive output.

The new dates, times, datetimes, and timedeltas strategies in \ 
hypothesis.strategies are all constrained by objects of their type. This means \ 
that you can generate dates bounded by a single day (i.e. a single date), or \ 
datetimes constrained to the microsecond.

times and datetimes take an optional timezones= argument, which defaults to \ 
none() for naive times. You can use our extra strategy based on pytz, or roll \ 
your own timezones strategy with dateutil or even the standard library.

The old dates, times, and datetimes strategies in hypothesis.extra.datetimes are \ 
deprecated in favor of the new core strategies, which are more flexible and have \ 
no dependencies.
   2017-05-23 09:57:50 by Adam Ciarcinski | Files touched by this commit (2)
Log message:
Changes 3.10.0:
Hypothesis now uses inspect.getfullargspec internally. On Python 2, there are no \ 
visible changes.

On Python 3 @given and @composite now preserve annotations on the decorated \ 
function. Keyword-only arguments are now either handled correctly (e.g. \ 
@composite), or caught in validation instead of silently discarded or raising an \ 
unrelated error later (e.g. @given).
   2017-05-20 07:36:31 by Adam Ciarcinski | Files touched by this commit (2)
Log message:
3.9.0 - 2017-05-19
This is feature release, expanding the capabilities of the decimals strategy.
* The new (optional) places argument allows you to generate decimals with a \ 
certain number of places (e.g. cents, thousandths, satoshis).
* If allow_infinity is None, setting min_bound no longer excludes positive \ 
infinity and setting max_value no longer excludes negative infinity.
* All of NaN, -Nan, sNaN, and -sNaN may now be drawn if allow_nan is True, or if \ 
allow_nan is None and min_value or max_value is None.
* min_value and max_value may be given as decimal strings, e.g. "1.234".
   2017-05-17 15:01:58 by Adam Ciarcinski | Files touched by this commit (2)
Log message:
Changes 3.8.5:
Import sqlite3 only if used; minor bugfixes
   2017-05-10 05:45:51 by Adam Ciarcinski | Files touched by this commit (2)
Log message:
Changes 3.8.3:
Remove pytest version check
   2017-04-27 14:55:54 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
Updated py-hypothesis to 3.8.2.

3.8.2 - 2017-04-26

This is a code reorganisation release that moves some internal test helpers out \ 
of the main source tree so as to not have changes to them trigger releases in \ 

3.8.1 - 2017-04-26

This is a documentation release. Almost all code examples are now doctests \ 
checked in CI, eliminating stale examples.

3.8.0 - 2017-04-23

This is a feature release, adding the iterables strategy, equivalent to \ 
lists(...).map(iter) but with a much more useful repr. You can use this strategy \ 
to check that code doesn’t accidentally depend on sequence properties such as \ 
indexing support or repeated iteration.

3.7.4 - 2017-04-22

This is a bug fix release for a single bug:

    In 3.7.3, using @example and a pytest fixture in the same test could cause \ 
the test to fail to fill the arguments, and throw a TypeError.

3.7.3 - 2017-04-21

This release should include no user visible changes and is purely a refactoring \ 
release. This modularises the behaviour of the core “given” function, \ 
breaking it up into smaller and more accessible parts, but its actual behaviour \ 
should remain unchanged.

3.7.2 - 2017-04-21

This reverts an undocumented change in 3.7.1 which broke installation on debian \ 
stable: The specifier for the hypothesis[django] extra_requires had introduced a \ 
wild card, which was not supported on the default version of pip.

3.7.1 - 2017-04-21

This is a bug fix and internal improvements release.

    In particular Hypothesis now tracks a tree of where it has already explored. \ 
This allows it to avoid some classes of duplicate examples, and significantly \ 
improves the performance of shrinking failing examples by allowing it to skip \ 
some shrinks that it can determine can’t possibly work.
    Hypothesis will no longer seed the global random arbitrarily unless you have \ 
asked it to using random_module()
    Shrinking would previously have not worked correctly in some special cases \ 
on Python 2, and would have resulted in suboptimal examples.
   2017-04-19 19:27:15 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
Updated py-hypothesis to 3.7.0.

3.7.0 - 2017-03-20

This is a feature release.

New features:

    Rule based stateful testing now has an @invariant decorator that specifies \ 
methods that are run after init and after every step, allowing you to encode \ 
properties that should be true at all times. Thanks to Tom Prince for this \ 
    The decimals strategy now supports allow_nan and allow_infinity flags.
    There are significantly more strategies available for numpy, including for \ 
generating arbitrary data types. Thanks to Zac Hatfield Dodds for this feature.
    When using the data() strategy you can now add a label as an argument to \ 
draw(), which will be printed along with the value when an example fails. Thanks \ 
to Peter Inglesby for this feature.

Bug fixes:

    Bug fix: @composite now preserves functions’ docstrings.
    The build is now reproducible and doesn’t depend on the path you build it \ 
from. Thanks to Chris Lamb for this feature.
    numpy strategies for the void data type did not work correctly. Thanks to \ 
Zac Hatfield Dodds for this fix.

There have also been a number of performance optimizations:

    The permutations() strategy is now significantly faster to use for large \ 
lists (the underlying algorithm has gone from O(n^2) to O(n)).
    Shrinking of failing test cases should have got significantly faster in some \ 
circumstances where it was previously struggling for a long time.
    Example generation now involves less indirection, which results in a small \ 
speedup in some cases (small enough that you won’t really notice it except in \ 
pathological cases).
   2017-01-01 16:35:12 by Thomas Klausner | Files touched by this commit (2)