Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(183)

Unified Diff: tests/lib_2/async/future_test.dart

Issue 2999943002: Migrated test block 168 to Dart 2.0. (Closed)
Patch Set: Fixed package:test crash related issues, addressed Bob's comments. Created 3 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « tests/lib_2/async/future_or_strong_test.dart ('k') | tests/lib_2/async/future_timeout_test.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tests/lib_2/async/future_test.dart
diff --git a/tests/lib/async/future_test.dart b/tests/lib_2/async/future_test.dart
similarity index 96%
rename from tests/lib/async/future_test.dart
rename to tests/lib_2/async/future_test.dart
index 4c46e3f79c94230c15da2e6a59c30e340e724c79..a222669d74affb66968db9f77928f6515df798d7 100644
--- a/tests/lib/async/future_test.dart
+++ b/tests/lib_2/async/future_test.dart
@@ -121,7 +121,7 @@ void testCompleteManySuccessHandlers() {
int after1;
int after2;
- var futures = [];
+ var futures = <Future<int>>[];
futures.add(future.then((int v) {
before = v;
}));
@@ -601,7 +601,7 @@ void testCompleteWithFutureSuccess() {
void testCompleteWithFutureSuccess2() {
asyncStart();
final completer = new Completer<int>();
- Future result = new Future.value(42);
+ final result = new Future<int>.value(42);
completer.complete(result);
completer.future.then((v) {
Expect.equals(42, v);
@@ -627,7 +627,7 @@ void testCompleteWithFutureError() {
void testCompleteWithFutureError2() {
asyncStart();
final completer = new Completer<int>();
- Future result = new Future.error("ERROR-tcwfe2");
+ var result = new Future<int>.error("ERROR-tcwfe2");
completer.complete(result);
completer.future.then((v) {
Expect.fail("Should not happen");
@@ -636,6 +636,7 @@ void testCompleteWithFutureError2() {
Expect.equals("ERROR-tcwfe2", e);
asyncEnd();
});
+
}
void testCompleteErrorWithFuture() {
@@ -776,7 +777,7 @@ void testWaitCleanUp() {
void doTest(int mask, int permute) {
asyncStart();
String stringId = "waitCleanup-$mask-$permute";
- List futures = new List(3);
+ List<Future> futures = new List(3);
List cleanup = new List(3);
int permuteTmp = permute;
for (int i = 0; i < 3; i++) {
@@ -821,7 +822,7 @@ void testWaitCleanUpEager() {
asyncStart();
bool done = false;
String stringId = "waitCleanup-$mask-$permute";
- List futures = new List(3);
+ List<Future> futures = new List<Future>(3);
List cleanup = new List(3);
int permuteTmp = permute;
for (int i = 0; i < 3; i++) {
@@ -994,9 +995,12 @@ void testTypes() {
new Future<int>.delayed(Duration.ZERO, () => value));
testType(
"Future.microtask($value)", new Future<int>.microtask(() => value));
- testType("Future.sync($value)", new Future<int>.sync(() => value)); //# 01: ok
- testType("Future.sync(future($value))", // //# 01: continued
- new Future<int>.sync(() => new Future<int>.value(value))); //# 01: continued
+ testType(
+ "Future.sync($value)", new Future<int>.sync(() => value)); // #01: ok
+ testType( //# 01: continued
+ "Future.sync(future($value))", //# 01: continued
+ new Future<int>.sync(//# 01: continued
+ () => new Future<int>.value(value))); //# 01: continued
testType("Future.value($value)", new Future<int>.value(value));
}
testType("Completer.future", new Completer<int>().future);
@@ -1174,31 +1178,31 @@ main() {
/// A well-behaved Future that isn't recognizable as a _Future.
class CustomFuture<T> implements Future<T> {
- Future _realFuture;
+ Future<T> _realFuture;
CustomFuture(this._realFuture);
- Future then(action(result), {Function onError}) =>
+ Future<S> then<S>(action(T result), {Function onError}) =>
_realFuture.then(action, onError: onError);
- Future catchError(Function onError, {bool test(e)}) =>
+ Future<T> catchError(Function onError, {bool test(e)}) =>
_realFuture.catchError(onError, test: test);
- Future whenComplete(action()) => _realFuture.whenComplete(action);
- Future timeout(Duration timeLimit, {void onTimeout()}) =>
+ Future<T> whenComplete(action()) => _realFuture.whenComplete(action);
+ Future<T> timeout(Duration timeLimit, {void onTimeout()}) =>
_realFuture.timeout(timeLimit, onTimeout: onTimeout);
- Stream asStream() => _realFuture.asStream();
+ Stream<T> asStream() => _realFuture.asStream();
String toString() => "CustomFuture@${_realFuture.hashCode}";
int get hashCode => _realFuture.hashCode;
}
/// A bad future that throws on every method.
class BadFuture<T> implements Future<T> {
- Future then(action(T result), {Function onError}) {
+ Future<S> then<S>(action(T result), {Function onError}) {
throw "then GOTCHA!";
}
- Future catchError(Function onError, {bool test(e)}) {
+ Future<T> catchError(Function onError, {bool test(Object e)}) {
throw "catch GOTCHA!";
}
- Future whenComplete(action()) {
+ Future<T> whenComplete(action()) {
throw "finally GOTCHA!";
}
@@ -1206,7 +1210,7 @@ class BadFuture<T> implements Future<T> {
throw "asStream GOTCHA!";
}
- Future timeout(Duration duration, {onTimeout()}) {
+ Future<T> timeout(Duration duration, {onTimeout()}) {
throw "timeout GOTCHA!";
}
}
@@ -1216,7 +1220,7 @@ class UglyFuture implements Future<dynamic> {
final _result;
UglyFuture(int badness)
: _result = (badness == 0) ? 42 : new UglyFuture(badness - 1);
- Future then(action(value), {onError(error, StackTrace stack)}) {
+ Future<S> then<S>(action(value), {Function onError}) {
var c = new Completer();
c.complete(new Future.microtask(() => action(_result)));
return c.future;
« no previous file with comments | « tests/lib_2/async/future_or_strong_test.dart ('k') | tests/lib_2/async/future_timeout_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698