a testfixture helper
Project description
mete0r.testfixture
a testfixture helper
Quickstart
To install:
pip install mete0r.testfixture
Let’s assume your project has following structure:
yourproject/ setup.py yourpackage/ __init__.py tests/ __init__.py test_foo.py fixtures/ foo.py bar.py
Define a fixture in yourpackage/tests/fixtures/foo.py:
from mete0r_testfixture.testfixture import testfixture @testfixture('Foo') def foo(fixtures): return { 'foo': None, }
Define another fixture in yourpackage/tests/fixtures/bar.py:
@testfixture('Bar', 'foo') def bar(fixtures): return { 'bar': fixtures.get('Foo') }
Now you can use them in your tests:
# yourpackage/tests/test_foo.py from unittest import TestCase from mete0r_testfixture.testfixture import TestFixtures from . import fixtures class FooTest(TestCase): def test_foo(self): testfixtures = TestFixtures('yourpackage.tests.fixtures') self.assertEquals({ 'bar': { 'foo': None, }, }, testfixtures.get('Bar', 'foo')
You can also list test fixtures defined in your packages:
$ mete0r-testfixture-scan yourpackage Foo yourpackage.tests.fixtures.foo.foo Bar, foo yourpackage.tests.fixtures.bar.bar
Caveat
mete0r.testfixture uses venusian to scan fixtures, so be careful not to scan test fixtures in your main application/package. For example:
config = Configurator(...) # pyramid configurator ... config.scan(ignore=[b'yourpackage.tests'])
Development environment
To setup development environment:
python setup.py virtualenv make
Changes
0.0.2 (2017-04-08)
Scans modules in the added order.
0.0.1 (2017-04-08)
Changes usage.
0.0.0 (2017-01-27)
Initial release.
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
mete0r.testfixture-0.0.2.tar.gz
(77.8 kB
view hashes)