Skip to main content

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.

Metadata

Release files for mete0r.testfixture 0.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mete0r.testfixture 0.0.2
File Size Uploaded
mete0r.testfixture-0.0.2.tar.gz 77.8 kB Details

Release files / mete0r.testfixture-0.0.2.tar.gz

Download URL mete0r.testfixture-0.0.2.tar.gz
Size 77.8 kB
Tags Source
SHA-256 checksum
How to use checksums
2601fd4f7d26e1584752dee738c553da723ec018de32f873a3aa53e59605984b
BLAKE2b-256 checksum
How to use checksums
3d1ec51c7a42b0a187af22d6144ccf0ddf5bdef6037403cdf81528d83441b110
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.0.2 This release

1 release file

0.0.1

1 release file

0.0.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page