Skip to main content

Easy creation of hamcrest matchers

Project description

Decorators that simplify the creation of Hamcrest matchers.

From a function (with an optional appropriate docstring), create hamcrest matchers with minimum extra coding.

The sources can be found in GitHub.

Examples:

from matchmaker import matcher

@matcher
def is_even(item):
    return item % 2 == 0

@matcher
def ends_like(item, data, length=3):
    "String whose last {1} chars match those for '{0}'"
    return item.endswith(data[-length:])

You can then use these in your tests as:

assert_that(number, is_even())
assert_that(word, ends_like(other_word, 4))

Errors will display as:

AssertionError:
Expected: Is even
     but: was <3>

AssertionError:
Expected: String whose last 4 chars match those for 'cello'
     but: was 'hullo'

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

matchmaker-0.1.4.tar.gz (2.7 kB view hashes)

Uploaded source

Built Distribution

matchmaker-0.1.4-py3-none-any.whl (2.6 kB view hashes)

Uploaded 3 8

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page