deb-python-testtools/testtools/assertions.py

23 lines
719 B
Python

from testtools.matchers import (
Annotate,
MismatchError,
)
def assert_that(matchee, matcher, message='', verbose=False):
"""Assert that matchee is matched by matcher.
This should only be used when you need to use a function based
matcher, assertThat in Testtools.Testcase is prefered and has more
features
:param matchee: An object to match with matcher.
:param matcher: An object meeting the testtools.Matcher protocol.
:raises MismatchError: When matcher does not match thing.
"""
matcher = Annotate.if_message(message, matcher)
mismatch = matcher.match(matchee)
if not mismatch:
return
raise MismatchError(matchee, matcher, mismatch, verbose)