expectAsyncUntil2< T, A, B> function
Informs the framework that the given callback
of arity 2 is expected to be
called until isDone
returns true.
Returns a wrapped function that should be used as a replacement of the original callback.
isDone
is called after each time the function is run. Only when it returns
true will the callback be considered complete.
Both id
and reason
are optional and provide extra information about the
callback when debugging. id
should be the name of the callback, while
reason
should be the reason the callback is expected to be called.
This method takes callbacks with two arguments. See also expectAsyncUntil0, expectAsyncUntil1, expectAsyncUntil3, expectAsyncUntil4, expectAsyncUntil5, and expectAsyncUntil6 for callbacks with different arity.
Implementation
Func2<T, A, B> expectAsyncUntil2<T, A, B>(T callback(A a, B b), bool isDone(),
{String id, String reason}) {
if (Invoker.current == null) {
throw StateError("expectAsyncUntil2() may only be called within a test.");
}
return _ExpectedFunction<T>(callback, 0, -1,
id: id, reason: reason, isDone: isDone)
.max2;
}