Create test sets to test different implementations of the same interface
Project description
Installation
$ pip install nose-test-sets
Usage
To define your set of common tests, create a TestSetBuilder, and use add_test to add tests. Each test should accept the same name of arguments. Say you define some tests for an adder in the module adder_test_set:
from nose_test_sets import TestSetBuilder test_set_builder = TestSetBuilder() test = test_set_builder.add_test @test def adding_zero_to_zero_returns_zero(adder): assert adder.add(0, 0) == 0 @test def adding_one_to_two_returns_three(adder): assert adder.add(1, 2) == 3 create = test_set_builder.create
To run the tests against a specific implementation, you create a set of tests using the create function that we defined above:
import adder_test_set def _run_test_with_standard_adder(test_func): adder = StandardAdder() return test_func(adder) StandardAdderTests = adder_test_set.create( "StandardAdderTests", _run_test_with_standard_adder )
The first argument to create should be the name of the concrete test set. The second argument is a function that can run each of the test functions. In the example above, to run the tests in StandardAdderTests, nose-test-sets ends up calling _run_test_with_standard_adder(adding_zero_to_zero_returns_zero) and _run_test_with_standard_adder(adding_one_to_two_returns_three).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file nose-test-sets-0.2.1.tar.gz
.
File metadata
- Download URL: nose-test-sets-0.2.1.tar.gz
- Upload date:
- Size: 1.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5c33257dabd07b42811b05a6349fcc60483b9694c3c54bcb45504785e4a1654e |
|
MD5 | 2c935d230cce29a0c93601d2d0c49e94 |
|
BLAKE2b-256 | d058296511e2518f814892b0f1c8899141f09ea4798e9d4c4f4303bd64717325 |