Skip to main content

checkexpect is a simple unit testing framework for python development

Project description

versiondownloads

checkexpect is a simple unit testing framework for python development https://pypi.python.org/pypi/checkexpect python library. checkexpect is a mature, viable way to make your test-driven development drive the design of your data, and your data drive the design of your functions. It’s also a simple tool that allows you to execute unit tests inline with your code, in a systematic way.

This is a fork of the original checkexpect, hosted on GitHub and last updated in 2016.

Features

  • [x] Support for inline unit tests. checkExpect will support test created in another directory as well.

  • [x] Support for TDD and DDD development.

  • [x] Support for Systematic Program Design methods using HtDD and HtDF recipes.

  • [x] Support for code coded terminal (console) output.

TODO

  • [ ] Python 3.5 support.

Installation

  1. Install checkexpect.

    pip install checkexpect
  2. Now you can now add a reference to the checkexpect package like so.

    #!/usr/bin/env python
    
    # import package
    from checkexpect.core import checkExpect
  3. Write some code and test it using checkexpect inline with your code.

    #!/usr/bin/env python
    
    # import packages
    from checkexpect.core import checkExpect
    import math
    
    # define a function
    def square(a):
        return a * a                    # could replace return statement with (lambda a: math.pow(a, 2))
                                    # from code_statement_B below.
    # examples
    num_to_square = 12
    code_statement_A = 12 * 12       # used in the function body
    
    # check the algor1thm design of our square function, and unit test it at the same time
    checkExpect(square, 12, 144, "Square of a number")
    
    # Or just pass our examples
    checkExpect(square, num_to_square, code_statement_A, "Square of a number")
    
    # Or use lambda expressions
    code_statement_B = lambda a: math.pow(a, 2)
    checkExpect(square, num_to_square, code_statement_B(12), "Square of a number")
  4. Execute your python script from the command line (terminal) to see the unit test results. Most tests usually fail (RED) in the beginning.

  5. Refactor your code and execute your script until all functions under test, turn GREEN.

  6. That’s it! You’re done.

Configuration

None - No configuration needed.

Support

For checkexpect support contact me at mailto:dareljohnson@yahoo.com

License

This project originally started life as javascript unit test project. This project was abandoned in 2013 and was brought back to life as checkexpect by our team in 2016. In the process, most of the project was refactored and brought up to speed with modern python best practices. The work done prior to the 2013 rewrite is licensed under MIT. Improvements since then are licensed under MIT. See LICENSE for more details.

SemVer

This project implements Semantic Versioning .

Credits

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

checkexpect-1.0.2-py2.py3-none-any.whl (6.0 kB view details)

Uploaded Python 2Python 3

File details

Details for the file checkexpect-1.0.2-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for checkexpect-1.0.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 19d35b8a312f304a752b761e85feb2b7f15993e488d9e62f95936017ce383dc7
MD5 3f430466bbd6cac72162ba9af0f2a790
BLAKE2b-256 55e72e11be510ddc01d61eede4df522998ef2bbb509498686e1c165073140463

See more details on using hashes here.

Supported by

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