| Index: pkg/unittest/lib/src/future_matchers.dart
|
| diff --git a/pkg/unittest/lib/src/future_matchers.dart b/pkg/unittest/lib/src/future_matchers.dart
|
| index ce7e804340228e62ebfa701d04d7746fa6ed36fe..9154c7c1b72f9abb223a0cbbcbf5ff1613d9df40 100644
|
| --- a/pkg/unittest/lib/src/future_matchers.dart
|
| +++ b/pkg/unittest/lib/src/future_matchers.dart
|
| @@ -35,18 +35,20 @@ class _Completes extends BaseMatcher {
|
| bool matches(item, MatchState matchState) {
|
| if (item is! Future) return false;
|
|
|
| - item.onComplete(wrapAsync((future) {
|
| + item.then((value) {
|
| + if (_matcher != null) expect(value, _matcher);
|
| + });
|
| +
|
| + item.catchError((e) {
|
| var reason = 'Expected future to complete successfully, but it failed '
|
| - 'with ${future.exception}';
|
| + 'with ${e.error}';
|
| if (future.stackTrace != null) {
|
| - var stackTrace = future.stackTrace.toString();
|
| + var stackTrace = e.stackTrace.toString();
|
| stackTrace = ' ${stackTrace.replaceAll('\n', '\n ')}';
|
| reason = '$reason\nStack trace:\n$stackTrace';
|
| }
|
| -
|
| - expect(future.hasValue, isTrue, reason: reason);
|
| - if (_matcher != null) expect(future.value, _matcher);
|
| - }));
|
| + expect(false, isTrue, reason: reason);
|
| + });
|
|
|
| return true;
|
| }
|
|
|