Numeric matchers
These matchers allow you to assert on specific numeric types, such as ints or floats
They are often combined with operator matchers to formulate constaints on numeric arguments of mocks:
from callee import Integer, GreaterThan
mock_foo.assert_called_with(Integer() & GreaterThan(42))
Integers
-
class
callee.numbers.Integer[source]
Matches a regular integer.
On Python 3, there is no distinction between regular and long integer,
making this matcher and Long equivalent.
On Python 2, this matches the int integers exclusively.
-
class
callee.numbers.Long[source]
Matches a long integer.
On Python 3, this is the same as regular integer, making this matcher
and Integer equivalent.
On Python 2, this matches the long integers exclusively.
-
class
callee.numbers.Integral[source]
Matches any integer.
This ignores the length of integer’s internal representation on Python 2.
Rational numbers
-
class
callee.numbers.Fraction[source]
Matches a fraction object.
-
class
callee.numbers.Rational[source]
Matches a rational number.
This includes all integer numbers as well.
Floating point numbers
-
class
callee.numbers.Float[source]
Matches a floating point number.
-
class
callee.numbers.Real[source]
Matches any real number.
This includes all rational and integer numbers as well, which in Python
translates to fractions, and integers.
Complex numbers
-
class
callee.numbers.Complex[source]
Matches any complex number.
This includes all real, rational, and integer numbers as well,
which in Python translates to floats, fractions, and integers.
All numbers
-
class
callee.numbers.Number[source]
Matches any number
(integer, float, complex, custom number types, etc.).