test library

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. This interface is implemented by StringDescription. This interface is unlikely to need other implementations, but could be useful to replace in some cases - e.g. language conversion.
isInstanceOf<T>
Returns a matcher that matches if an object is an instance of T (or a subtype). [...]
Matcher
expect Matchers must implement/extend the Matcher class. [...]
OnPlatform
An annotation for platform-specific customizations for a test suite. [...]
Skip
An annotation for marking a test suite as skipped.
StreamMatcher
A matcher that matches events from Streams or StreamQueues. [...]
StringDescription
The default implementation of Description. This should rarely need substitution, although conceivably it is a place where other languages could be supported.
Tags
An annotation for applying a set of user-defined tags to a test suite. [...]
TestFailure
An exception thrown when a test assertion fails.
TestOn
An annotation indicating which platforms a test suite supports. [...]
Throws
Use the throwsA function instead.
Timeout
A class representing a modification to the default timeout for a test. [...]
TypeMatcher

Constants

anything → const Matcher
A matcher that matches any value.
const _IsAnything()
isArgumentError → const Matcher
A matcher for ArgumentErrors.
const _ArgumentError()
isConcurrentModificationError → const Matcher
A matcher for ConcurrentModificationError.
const _ConcurrentModificationError()
isCyclicInitializationError → const Matcher
A matcher for CyclicInitializationError.
const _CyclicInitializationError()
isEmpty → const Matcher
Returns a matcher that matches the isEmpty property.
const _Empty()
isException → const Matcher
A matcher for Exceptions.
const _Exception()
isFalse → const Matcher
A matcher that matches anything except the Boolean value true.
const _IsFalse()
isFormatException → const Matcher
A matcher for FormatExceptions.
const _FormatException()
isList → const Matcher
A matcher for List types.
const _IsList()
isMap → const Matcher
A matcher for Map types.
const _IsMap()
isNaN → const Matcher
A matcher that matches the numeric value NaN.
const _IsNaN()
isNegative → const Matcher
A matcher which matches if the match argument is negative.
const _OrderingMatcher(0, false, true, false, 'a negative value', false)
isNonNegative → const Matcher
A matcher which matches if the match argument is zero or positive.
const _OrderingMatcher(0, true, false, true, 'a non-negative value', false)
isNonPositive → const Matcher
A matcher which matches if the match argument is zero or negative.
const _OrderingMatcher(0, true, true, false, 'a non-positive value', false)
isNonZero → const Matcher
A matcher which matches if the match argument is non-zero.
const _OrderingMatcher(0, false, true, true, 'a value not equal to')
isNoSuchMethodError → const Matcher
A matcher for NoSuchMethodErrors.
const _NoSuchMethodError()
isNotEmpty → const Matcher
Returns a matcher that matches the isNotEmpty property.
const _NotEmpty()
isNotNaN → const Matcher
A matcher that matches any non-NaN value.
const _IsNotNaN()
isNotNull → const Matcher
A matcher that matches any non-null value.
const _IsNotNull()
isNull → const Matcher
A matcher that matches any null value.
const _IsNull()
isNullThrownError → const Matcher
A matcher for NullThrownError.
const _NullThrownError()
isPositive → const Matcher
A matcher which matches if the match argument is positive.
const _OrderingMatcher(0, false, false, true, 'a positive value', false)
isRangeError → const Matcher
A matcher for RangeErrors.
const _RangeError()
isStateError → const Matcher
A matcher for StateErrors.
const _StateError()
isTrue → const Matcher
A matcher that matches the Boolean value true.
const _IsTrue()
isUnimplementedError → const Matcher
A matcher for UnimplementedErrors.
const _UnimplementedError()
isUnsupportedError → const Matcher
A matcher for UnsupportedError.
const _UnsupportedError()
isZero → const Matcher
A matcher which matches if the match argument is zero.
const _OrderingMatcher(0, true, false, false, 'a value equal to')
returnsNormally → const Matcher
A matcher that matches a function call against no exception. [...]
const _ReturnsNormally()
throws → const Matcher
This function is deprecated. [...]
@Deprecated("Will be removed in 0.13.0")
const Throws()
throwsArgumentError → const Matcher
A matcher for functions that throw ArgumentError.
const Throws(isArgumentError)
throwsConcurrentModificationError → const Matcher
A matcher for functions that throw ConcurrentModificationError.
const Throws(isConcurrentModificationError)
throwsCyclicInitializationError → const Matcher
A matcher for functions that throw CyclicInitializationError.
const Throws(isCyclicInitializationError)
throwsException → const Matcher
A matcher for functions that throw Exception.
const Throws(isException)
throwsFormatException → const Matcher
A matcher for functions that throw FormatException.
const Throws(isFormatException)
throwsNoSuchMethodError → const Matcher
A matcher for functions that throw NoSuchMethodError.
const Throws(isNoSuchMethodError)
throwsNullThrownError → const Matcher
A matcher for functions that throw NullThrownError.
const Throws(isNullThrownError)
throwsRangeError → const Matcher
A matcher for functions that throw RangeError.
const Throws(isRangeError)
throwsStateError → const Matcher
A matcher for functions that throw StateError.
const Throws(isStateError)
throwsUnimplementedError → const Matcher
A matcher for functions that throw Exception.
const Throws(isUnimplementedError)
throwsUnsupportedError → const Matcher
A matcher for functions that throw UnsupportedError.
const Throws(isUnsupportedError)

Properties

completes Matcher
Matches a Future that completes successfully with a value. [...]
final
doesNotComplete Matcher
Matches a Future that does not complete. [...]
final
emitsDone StreamMatcher
Returns a StreamMatcher that asserts that the stream emits a "done" event.
final
neverCalled → T Function<T>([Object, Object, Object, Object, Object, Object, Object, Object, Object, Object ])
Returns a function that causes the test to fail if it's called. [...]
read-only

Functions

addStateInfo(Map matchState, Map values) → void
Useful utility for nesting match states.
addTearDown(dynamic callback()) → void
Registers a function to be run after the current test. [...]
allOf(dynamic arg0, [ dynamic arg1, dynamic arg2, dynamic arg3, dynamic arg4, dynamic arg5, dynamic arg6 ]) Matcher
This returns a matcher that matches if all of the matchers passed as arguments (up to 7) match. [...]
anyElement(dynamic matcher) Matcher
Returns a matcher which matches Iterables in which at least one element matches the given matcher.
anyOf(dynamic arg0, [ dynamic arg1, dynamic arg2, dynamic arg3, dynamic arg4, dynamic arg5, dynamic 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 some value. [...]
collapseWhitespace(String string) String
Utility function to collapse whitespace runs to single spaces and strip leading/trailing whitespace.
completion(dynamic matcher, [ String description ]) Matcher
Matches a Future that completes succesfully with a value that matches matcher. [...]
contains(dynamic 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. [...]
containsPair(dynamic key, dynamic value) Matcher
Returns a matcher which matches maps containing the key-value pair with key => value.
containsValue(dynamic value) Matcher
Returns a matcher which matches maps containing the given value.
emits(dynamic matcher) StreamMatcher
Returns a StreamMatcher for matcher. [...]
emitsAnyOf(Iterable matchers) StreamMatcher
Returns a StreamMatcher that matches the stream if at least one of matchers matches. [...]
emitsError(dynamic matcher) StreamMatcher
Returns a StreamMatcher that matches a single error event that matches matcher.
emitsInAnyOrder(Iterable matchers) StreamMatcher
Returns a StreamMatcher that matches the stream if each matcher in matchers matches, in any order. [...]
emitsInOrder(Iterable matchers) StreamMatcher
Returns a StreamMatcher that matches the stream if each matcher in matchers matches, one after another. [...]
emitsThrough(dynamic matcher) StreamMatcher
Returns a StreamMatcher that matches any number of events followed by events that match matcher. [...]
endsWith(String suffixString) Matcher
Returns a matcher that matches if the match argument is a string and ends with suffixString.
equals(dynamic 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(dynamic matcher) Matcher
Returns a matcher which matches Iterables in which all elements match the given matcher.
expect(dynamic actual, dynamic matcher, { String reason, dynamic skip, bool verbose: false, ErrorFormatter formatter }) → void
Assert that actual matches matcher. [...]
expectAsync(Function callback, { int count: 1, int max: 0, String id, String reason }) Function
This function is deprecated because it doesn't work well with strong mode. Use expectAsync0, expectAsync1, expectAsync2, expectAsync3, expectAsync4, expectAsync5, or expectAsync6 instead.
@Deprecated("Will be removed in 0.13.0")
expectAsync0<T>(T callback(), { int count: 1, int max: 0, String id, String reason }) Func0<T>
Informs the framework that the given callback of arity 0 is expected to be called count number of times (by default 1). [...]
expectAsync1<T, A>(T callback(A a), { int count: 1, int max: 0, String id, String reason }) Func1<T, A>
Informs the framework that the given callback of arity 1 is expected to be called count number of times (by default 1). [...]
expectAsync2<T, A, B>(T callback(A a, B b), { int count: 1, int max: 0, String id, String reason }) Func2<T, A, B>
Informs the framework that the given callback of arity 2 is expected to be called count number of times (by default 1). [...]
expectAsync3<T, A, B, C>(T callback(A a, B b, C c), { int count: 1, int max: 0, String id, String reason }) Func3<T, A, B, C>
Informs the framework that the given callback of arity 3 is expected to be called count number of times (by default 1). [...]
expectAsync4<T, A, B, C, D>(T callback(A a, B b, C c, D d), { int count: 1, int max: 0, String id, String reason }) Func4<T, A, B, C, D>
Informs the framework that the given callback of arity 4 is expected to be called count number of times (by default 1). [...]
expectAsync5<T, A, B, C, D, E>(T callback(A a, B b, C c, D d, E e), { int count: 1, int max: 0, String id, String reason }) Func5<T, A, B, C, D, E>
Informs the framework that the given callback of arity 5 is expected to be called count number of times (by default 1). [...]
expectAsync6<T, A, B, C, D, E, F>(T callback(A a, B b, C c, D d, E e, F f), { int count: 1, int max: 0, String id, String reason }) Func6<T, A, B, C, D, E, F>
Informs the framework that the given callback of arity 6 is expected to be called count number of times (by default 1). [...]
expectAsyncUntil(Function callback, bool isDone(), { String id, String reason }) Function
This function is deprecated because it doesn't work well with strong mode. Use expectAsyncUntil0, expectAsyncUntil1, expectAsyncUntil2, expectAsyncUntil3, expectAsyncUntil4, expectAsyncUntil5, or expectAsyncUntil6 instead.
@Deprecated("Will be removed in 0.13.0")
expectAsyncUntil0<T>(T callback(), bool isDone(), { String id, String reason }) Func0<T>
Informs the framework that the given callback of arity 0 is expected to be called until isDone returns true. [...]
expectAsyncUntil1<T, A>(T callback(A a), bool isDone(), { String id, String reason }) Func1<T, A>
Informs the framework that the given callback of arity 1 is expected to be called until isDone returns true. [...]
expectAsyncUntil2<T, A, B>(T callback(A a, B b), bool isDone(), { String id, String reason }) Func2<T, A, B>
Informs the framework that the given callback of arity 2 is expected to be called until isDone returns true. [...]
expectAsyncUntil3<T, A, B, C>(T callback(A a, B b, C c), bool isDone(), { String id, String reason }) Func3<T, A, B, C>
Informs the framework that the given callback of arity 3 is expected to be called until isDone returns true. [...]
expectAsyncUntil4<T, A, B, C, D>(T callback(A a, B b, C c, D d), bool isDone(), { String id, String reason }) Func4<T, A, B, C, D>
Informs the framework that the given callback of arity 4 is expected to be called until isDone returns true. [...]
expectAsyncUntil5<T, A, B, C, D, E>(T callback(A a, B b, C c, D d, E e), bool isDone(), { String id, String reason }) Func5<T, A, B, C, D, E>
Informs the framework that the given callback of arity 5 is expected to be called until isDone returns true. [...]
expectAsyncUntil6<T, A, B, C, D, E, F>(T callback(A a, B b, C c, D d, E e, F f), bool isDone(), { String id, String reason }) Func6<T, A, B, C, D, E, F>
Informs the framework that the given callback of arity 6 is expected to be called until isDone returns true. [...]
expectLater(dynamic actual, dynamic matcher, { String reason, dynamic skip }) Future
Just like expect, but returns a Future that completes when the matcher has finished matching. [...]
fail(String message) Null
Convenience method for throwing a new TestFailure with the provided message.
@alwaysThrows
greaterThan(dynamic value) Matcher
Returns a matcher which matches if the match argument is greater than the given value.
greaterThanOrEqualTo(dynamic value) Matcher
Returns a matcher which matches if the match argument is greater than or equal to the given value.
group(dynamic description, dynamic body(), { String testOn, Timeout timeout, dynamic skip, dynamic tags, Map<String, dynamic> onPlatform, int retry }) → void
Creates a group of tests. [...]
hasLength(dynamic 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 than high.
inExclusiveRange(num low, num high) Matcher
Returns a matcher which matches if the match argument is greater than low and less than high.
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 to high.
inOpenClosedRange(num low, num high) Matcher
Returns a matcher which matches if the match argument is greater than low and less than or equal to high.
isIn(dynamic expected) Matcher
Returns a matcher that matches if the match argument is in the expected value. This is the converse of contains.
isNot(dynamic matcher) Matcher
This returns a matcher that inverts matcher to its logical negation.
lessThan(dynamic value) Matcher
Returns a matcher which matches if the match argument is less than the given value.
lessThanOrEqualTo(dynamic value) Matcher
Returns a matcher which matches if the match argument is less than or equal to the given value.
matches(dynamic re) Matcher
Returns a matcher that matches if the match argument is a string and matches the regular expression given by re. [...]
mayEmit(dynamic matcher) StreamMatcher
Returns a StreamMatcher that allows (but doesn't require) matcher to match the stream. [...]
mayEmitMultiple(dynamic matcher) StreamMatcher
Returns a StreamMatcher that matches any number of events that match matcher. [...]
neverEmits(dynamic matcher) StreamMatcher
Returns a StreamMatcher that matches a stream that never matches matcher. [...]
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 a, T b), String description) Matcher
A pairwise matcher for Iterables. [...]
predicate<T>(bool f(T value), [ String description = 'satisfies function' ]) Matcher
Returns a matcher that uses an arbitrary function that returns true or false for the actual value. [...]
printOnFailure(String message) → void
Prints message if and when the current test fails. [...]
prints(dynamic matcher) Matcher
Matches a Function that prints text that matches matcher. [...]
pumpEventQueue({int times }) Future
Returns a Future that completes after the event loop has run the given number of times (20 by default). [...]
registerException(dynamic error, [ StackTrace stackTrace ]) → void
Registers an exception that was caught for the current test.
same(dynamic expected) Matcher
Returns a matches that matches if the value is the same instance as expected, using identical.
setUp(dynamic callback()) → void
Registers a function to be run before tests. [...]
setUpAll(dynamic callback()) → void
Registers a function to be run once before all tests. [...]
spawnHybridCode(String dartCode, { Object message, bool stayAlive: false }) StreamChannel
Spawns a VM isolate that runs the given dartCode, which is loaded as the contents of a Dart library. [...]
spawnHybridUri(dynamic uri, { Object message, bool stayAlive: false }) StreamChannel
Spawns a VM isolate for the given uri, which may be a Uri or a String. [...]
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. [...]
tearDown(dynamic callback()) → void
Registers a function to be run after tests. [...]
tearDownAll(dynamic callback()) → void
Registers a function to be run once after all tests. [...]
test(dynamic description, dynamic body(), { String testOn, Timeout timeout, dynamic skip, dynamic tags, Map<String, dynamic> onPlatform, int retry }) → void
Creates a new test case with the given description (converted to a string) and body. [...]
throwsA(dynamic matcher) Matcher
This can be used to match three kinds of objects: [...]
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(dynamic x) Matcher
Takes an argument and returns an equivalent Matcher. [...]

Typedefs

ErrorFormatter(dynamic actual, Matcher matcher, String reason, Map matchState, bool verbose) String
The type used for functions that can be used to build up error reports upon failures in expect.
@Deprecated("Will be removed in 0.13.0.")
Func0<T>() → T
Func1<T, A>([A a ]) → T
Func2<T, A, B>([A a, B b ]) → T
Func3<T, A, B, C>([A a, B b, C c ]) → T
Func4<T, A, B, C, D>([A a, B b, C c, D d ]) → T
Func5<T, A, B, C, D, E>([A a, B b, C c, D d, E e ]) → T
Func6<T, A, B, C, D, E, F>([A a, B b, C c, D d, E e, F f ]) → T