ANN: Datatest 0.9.4 Released

Shawn Brown 03sjbrown at gmail.com
Mon Apr 22 10:32:27 EDT 2019


Datatest provides tools for test driven data-wrangling and

data validation. It supports both pytest and unittest style

testing.


I've been working to get datatest ready for a few pre-PyCon

updates. This latest release takes many of the "how-to"

solutions and brings them into the core package.


* Docs - https://datatest.readthedocs.io/

* PyPI - https://pypi.org/project/datatest/

* Devel - https://github.com/shawnbrown/datatest


Upgrade an existing installation to 0.9.4:


pip install --upgrade datatest


What's New in Datatest 0.9.4:


* Added Python 3.8 testing and support.

* Added new validate methods (moved from how-to recipes into

core module):

* Added approx() method to require for approximate numeric

equality.

* Added fuzzy() method to require strings by approximate match.

* Added interval() method to require elements within a given

interval.

* Added set(), subset(), and superset() methods for explicit

membership checking.

* Added unique() method to require unique elements.

* Added order() method to require elements by relative order.

* Changed default sequence validation to check elements by

index position rather than checking by relative order.

* Added fuzzy-matching allowance to allow strings by approximate

match.

* Added Predicate class to formalize behavior--also provides

inverse-matching with the inversion operator (~).

* Added new methods to Query class:

* Added unwrap() to remove single-element containers and return

their unwrapped contents.

* Added starmap() to unpack grouped arguments when applying a

function to elements.

* Fixed improper use of assert statements with appropriate

conditional checks and error behavior.

* Added requirement class hierarchy (using BaseRequirement). This

gives users a cleaner way to implement custom validation behavior

and makes the underlying codebase easier to maintain.

* Changed name of ProxyGroup to RepeatingContainer.

* Changed "How To" examples to use the new validation methods.


More information about the Python-announce-list mailing list