Skip to main content

Test Driven Data Analysis

Project description

# tdda Test-Driven Data Analysis Functions

Installation

The simplest way to install all of the TDDA Python modules is using pip:

pip install tdda

But note that it is not particularly easy to run through the examples using a PyPi binary installation like that. The full set of sources, including all examples, will be downloadable from PyPi with:

pip download –no-binary :all: tdda

The sources are also publicly available from Github:

git clone git@github.com:tdda/tdda.git

Level 0:

The tdda.referencetest library is used to support the creation of reference tests, based on either unittest or pytest.

These are like other tests except:

  1. They have special support for comparing strings to files and files to files.

  2. That support includes the ability to provide exclusion patterns (for things like dates and versions that might be in the output).

  3. When a string/file assertion fails, it spits out the command you need to diff the output.

  4. If there were exclusion patterns, it also writes modified versions of both the actual and expected output and also prints the diff command needed to compare those.

  5. They have special support for handling CSV files.

  6. It supports flags (-w and -W) to rewrite the reference (expected) results once you have confirmed that the new actuals are correct.

For usage details:

>>> import tdda.referencetest
>>> help(tdda.referencetest)

For more details from a source distribution or checkout, see the README.md file and examples in the referencetest subdirectory.

An older implementation of these ideas is available as a unittest wrapper class, WritableTestCase, in writabletestcase.py. This can be imported directly with from tdda.writabletestcase import WritableTestCase. Examples of using this are currently available in the deprecated subdirectory. This older version will be fully deprecated and removed soon.

Level 1:

The tdda.constraints library is used to ‘discover’ constraints from a (pandas) DataFrame, write them out as JSON, and to verify that datasets meet the constraints in the constraints file.

For usage details:

>>> import tdda.constraints
>>> help(tdda.constraints)

For more details from a source distribution or checkout, see the README.md file and examples in the constraints subdirectory.

Resources

Resources on these topics include:

All examples, tests and code should run under Python2 and Python3.

The tdda repository also includes rexpy, a tool for automatically inferring regular expressions from a single field of data examples.

For usage details:

>>> import tdda.rexpy
>>> help(tdda.rexpy)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tdda-0.2.4.tar.gz (115.6 kB view details)

Uploaded Source

Built Distributions

tdda-0.2.4-py3-none-any.whl (74.8 kB view details)

Uploaded Python 3

tdda-0.2.4-py2-none-any.whl (74.8 kB view details)

Uploaded Python 2

File details

Details for the file tdda-0.2.4.tar.gz.

File metadata

  • Download URL: tdda-0.2.4.tar.gz
  • Upload date:
  • Size: 115.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for tdda-0.2.4.tar.gz
Algorithm Hash digest
SHA256 0582d8a3d49125ff3fcf90e86d2675104e6f1360dbd21e55d54003732a2f8a8b
MD5 74c550632e1fb7f6d7ef90fa7934bc91
BLAKE2b-256 594429f0e1478af1a05c3d3df1e51d0aa646a1f724571494aded883a35edbcd9

See more details on using hashes here.

File details

Details for the file tdda-0.2.4-py3-none-any.whl.

File metadata

  • Download URL: tdda-0.2.4-py3-none-any.whl
  • Upload date:
  • Size: 74.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for tdda-0.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 8314b917634358689e44fa646a88c0856d6e667f7ee770549fa662ec42e4fcd8
MD5 26f5b9a6edab9d08f08dfa1b9d34b5b9
BLAKE2b-256 23d9bdb22d18b0743354ebb83748219fd04f4219d72b94b6f50bd52154fc0371

See more details on using hashes here.

File details

Details for the file tdda-0.2.4-py2-none-any.whl.

File metadata

  • Download URL: tdda-0.2.4-py2-none-any.whl
  • Upload date:
  • Size: 74.8 kB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for tdda-0.2.4-py2-none-any.whl
Algorithm Hash digest
SHA256 33d360b3d6402d67b8ec701d59020772c84bcab24b2ec7269945155f24e9cfb6
MD5 9a06f82a9abc097de90e78c21c3afadb
BLAKE2b-256 ebecc3461d7d9982b02362a14d697e00a6351a5cdaec26208b53fef811930be9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page