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. [...]
isInstanceOf<T>
DEPRECATED Use TypeMatcher instead. [...]
Matcher
The base class for all matchers. [...]
OnPlatform
An annotation for platform-specific customizations for a test suite. [...]
Retry
An annotation for marking a test to be retried. [...]
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<T>
A Matcher subclass that supports validating the Type of the target object. [...]

Constants

anything → const Matcher
A matcher that matches any value.
const _IsAnything()
isArgumentError → const TypeMatcher<ArgumentError>
A matcher for ArgumentError.
const TypeMatcher<ArgumentError>()
isConcurrentModificationError → const TypeMatcher<ConcurrentModificationError>
A matcher for ConcurrentModificationError.
const TypeMatcher<ConcurrentModificationError>()
isCyclicInitializationError → const TypeMatcher<CyclicInitializationError>
A matcher for CyclicInitializationError.
const TypeMatcher<CyclicInitializationError>()
isEmpty → const Matcher
Returns a matcher that matches the isEmpty property.
const _Empty()
isException → const TypeMatcher<Exception>
A matcher for Exception.
const TypeMatcher<Exception>()
isFalse → const Matcher
A matcher that matches anything except the Boolean value true.
const _IsFalse()
isFormatException → const TypeMatcher<FormatException>
A matcher for FormatException.
const TypeMatcher<FormatException>()
isList → const TypeMatcher<List>
A matcher for List.
const TypeMatcher<List>()
isMap → const TypeMatcher<Map>
A matcher for Map.
const TypeMatcher<Map>()
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 TypeMatcher<NoSuchMethodError>
A matcher for NoSuchMethodError.
const TypeMatcher<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 TypeMatcher<NullThrownError>
A matcher for NullThrownError.
const TypeMatcher<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 TypeMatcher<RangeError>
A matcher for RangeError.
const TypeMatcher<RangeError>()
isStateError → const TypeMatcher<StateError>
A matcher for StateError.
const TypeMatcher<StateError>()
isTrue → const Matcher
A matcher that matches the Boolean value true.
const _IsTrue()
isUnimplementedError → const TypeMatcher<UnimplementedError>
A matcher for UnimplementedError.
const TypeMatcher<UnimplementedError>()
isUnsupportedError → const TypeMatcher<UnsupportedError>
A matcher for UnsupportedError.
const TypeMatcher<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 Null Function([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, bool solo: false }) → void
Creates a group of tests. [...]
@isTestGroup
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, bool solo: false }) → void
Creates a new test case with the given description (converted to a string) and body. [...]
@isTest
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