matcher library
Support for specifying test expectations, such as for unit tests.
Classes
- CustomMatcher
- A useful utility class for implementing other matchers through inheritance. Derived classes should call the base constructor with a feature name and description, and an instance matcher, and should implement the featureValueOf abstract method.
- Description
- Matchers build up their error messages by appending to Description objects.
-
isInstanceOf<
T> - DEPRECATED Use isA instead.
- Matcher
- The base class for all matchers.
- StringDescription
- The default implementation of Description. This should rarely need substitution, although conceivably it is a place where other languages could be supported.
-
TypeMatcher<
T> - A Matcher subclass that supports validating the Type of the target object.
Constants
- anything → const Matcher
- A matcher that matches any value.
-
isArgumentError
→ const TypeMatcher<
ArgumentError> -
A matcher for
ArgumentError
. -
isCastError
→ const TypeMatcher<
TypeError> -
A matcher for
TypeError
. -
isConcurrentModificationError
→ const TypeMatcher<
ConcurrentModificationError> -
A matcher for
ConcurrentModificationError
. -
isCyclicInitializationError
→ const TypeMatcher<
Error> -
A matcher for
Error
. - isEmpty → const Matcher
- Returns a matcher that matches the isEmpty property.
-
isException
→ const TypeMatcher<
Exception> -
A matcher for
Exception
. - isFalse → const Matcher
- A matcher that matches anything except the Boolean value true.
-
isFormatException
→ const TypeMatcher<
FormatException> -
A matcher for
FormatException
. -
isList
→ const TypeMatcher<
List> -
A matcher for
List
. -
isMap
→ const TypeMatcher<
Map> -
A matcher for
Map
. - isNaN → const Matcher
- A matcher that matches the numeric value NaN.
- isNegative → const Matcher
- A matcher which matches if the match argument is negative.
- isNonNegative → const Matcher
- A matcher which matches if the match argument is zero or positive.
- isNonPositive → const Matcher
- A matcher which matches if the match argument is zero or negative.
- isNonZero → const Matcher
- A matcher which matches if the match argument is non-zero.
-
isNoSuchMethodError
→ const TypeMatcher<
NoSuchMethodError> -
A matcher for
NoSuchMethodError
. - isNotEmpty → const Matcher
- Returns a matcher that matches the isNotEmpty property.
- isNotNaN → const Matcher
- A matcher that matches any non-NaN value.
- isNotNull → const Matcher
- A matcher that matches any non-null value.
- isNull → const Matcher
- A matcher that matches any null value.
-
isNullThrownError
→ const TypeMatcher<
TypeError> -
A matcher for
TypeError
. - isPositive → const Matcher
- A matcher which matches if the match argument is positive.
-
isRangeError
→ const TypeMatcher<
RangeError> -
A matcher for
RangeError
. -
isStateError
→ const TypeMatcher<
StateError> -
A matcher for
StateError
. - isTrue → const Matcher
- A matcher that matches the Boolean value true.
-
isUnimplementedError
→ const TypeMatcher<
UnimplementedError> -
A matcher for
UnimplementedError
. -
isUnsupportedError
→ const TypeMatcher<
UnsupportedError> -
A matcher for
UnsupportedError
. - isZero → const Matcher
- A matcher which matches if the match argument is zero.
- returnsNormally → const Matcher
- A matcher that matches a function call against no exception.
Functions
-
addStateInfo(
Map matchState, Map values) → void - Useful utility for nesting match states.
-
allOf(
Object? arg0, [Object? arg1, Object? arg2, Object? arg3, Object? arg4, Object? arg5, Object? arg6]) → Matcher - This returns a matcher that matches if all of the matchers passed as arguments (up to 7) match.
-
anyElement(
Object? valueOrMatcher) → Matcher -
Returns a matcher which matches Iterables in which at least one
element matches the given
valueOrMatcher
. -
anyOf(
Object? arg0, [Object? arg1, Object? arg2, Object? arg3, Object? arg4, Object? arg5, Object? arg6]) → Matcher - Matches if any of the given matchers evaluate to true.
-
closeTo(
num value, num delta) → Matcher -
Returns a matcher which matches if the match argument is within
delta
of somevalue
. -
collapseWhitespace(
String string) → String - Utility function to collapse whitespace runs to single spaces and strip leading/trailing whitespace.
-
contains(
Object? expected) → Matcher - Returns a matcher that matches if the match argument contains the expected value.
-
containsAll(
Iterable expected) → Matcher -
Matches Iterables which contain an element matching every value in
expected
in any order, and may contain additional values. -
containsAllInOrder(
Iterable expected) → Matcher -
Matches Iterables which contain an element matching every value in
expected
in the same order, but may contain additional values interleaved throughout. -
containsOnce(
Object? expected) → Matcher - Matches Iterables where exactly one element matches the expected value, and all other elements don't match.
-
containsPair(
Object? key, Object? valueOrMatcher) → Matcher -
Returns a matcher which matches maps containing the key-value pair
with
key
=>valueOrMatcher
. -
containsValue(
Object? value) → Matcher -
Returns a matcher which matches maps containing the given
value
. -
endsWith(
String suffixString) → Matcher -
Returns a matcher that matches if the match argument is a string and
ends with
suffixString
. -
equals(
Object? expected, [int limit = 100]) → Matcher -
Returns a matcher that matches if the value is structurally equal to
expected
. -
equalsIgnoringCase(
String value) → Matcher -
Returns a matcher which matches if the match argument is a string and
is equal to
value
when compared case-insensitively. -
equalsIgnoringWhitespace(
String value) → Matcher -
Returns a matcher which matches if the match argument is a string and
is equal to
value
, ignoring whitespace. -
escape(
String str) → String -
Returns
str
with all whitespace characters represented as their escape sequences. -
everyElement(
Object? valueOrMatcher) → Matcher -
Returns a matcher which matches Iterables in which all elements
match the given
valueOrMatcher
. -
greaterThan(
Object value) → Matcher -
Returns a matcher which matches if the match argument is greater
than the given
value
. -
greaterThanOrEqualTo(
Object value) → Matcher -
Returns a matcher which matches if the match argument is greater
than or equal to the given
value
. -
hasLength(
Object? matcher) → Matcher -
Returns a matcher that matches if an object has a length property
that matches
matcher
. -
inClosedOpenRange(
num low, num high) → Matcher -
Returns a matcher which matches if the match argument is greater
than or equal to a
low
and less thanhigh
. -
inExclusiveRange(
num low, num high) → Matcher -
Returns a matcher which matches if the match argument is greater
than
low
and less thanhigh
. -
inInclusiveRange(
num low, num high) → Matcher -
Returns a matcher which matches if the match argument is greater
than or equal to
low
and less than or equal tohigh
. -
inOpenClosedRange(
num low, num high) → Matcher -
Returns a matcher which matches if the match argument is greater
than
low
and less than or equal tohigh
. -
isA<
T> () → TypeMatcher< T> -
Returns a matcher that matches objects with type
T
. -
isIn(
Object? expected) → Matcher - Returns a matcher that matches if the match argument is in the expected value. This is the converse of contains.
-
isNot(
Object? valueOrMatcher) → Matcher -
Returns a matcher that inverts
valueOrMatcher
to its logical negation. -
lessThan(
Object value) → Matcher -
Returns a matcher which matches if the match argument is less
than the given
value
. -
lessThanOrEqualTo(
Object value) → Matcher -
Returns a matcher which matches if the match argument is less
than or equal to the given
value
. -
matches(
Pattern re) → Matcher -
Returns a matcher that matches if the match argument is a string and
matches the regular expression given by
re
. -
orderedEquals(
Iterable expected) → Matcher -
Returns a matcher which matches Iterables that have the same
length and the same elements as
expected
, in the same order. -
pairwiseCompare<
S, T> (Iterable< S> expected, bool comparator(S, T), String description) → Matcher - A pairwise matcher for Iterables.
-
predicate<
T> (bool f(T), [String description = 'satisfies function']) → Matcher - Returns a matcher that uses an arbitrary function that returns whether the value is considered a match.
-
same(
Object? expected) → Matcher -
Returns a matches that matches if the value is the same instance
as
expected
, using identical. -
startsWith(
String prefixString) → Matcher -
Returns a matcher that matches if the match argument is a string and
starts with
prefixString
. -
stringContainsInOrder(
List< String> substrings) → Matcher -
Returns a matcher that matches if the match argument is a string and
contains a given list of
substrings
in relative order. -
unorderedEquals(
Iterable expected) → Matcher -
Returns a matcher which matches Iterables that have the same length and
the same elements as
expected
, but not necessarily in the same order. -
unorderedMatches(
Iterable expected) → Matcher -
Returns a matcher which matches Iterables whose elements match the
matchers in
expected
, but not necessarily in the same order. -
wrapMatcher(
Object? valueOrMatcher) → Matcher - Takes an argument and returns an equivalent Matcher.