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

Unified Diff: tests/compiler/dart2js/type_variable_bound_test.dart

Issue 1661853005: Introduce getPrefixEndToken to avoid too big context in messages. (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Updated cf. comments. Created 4 years, 10 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/compiler/dart2js/message_span_test.dart ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tests/compiler/dart2js/type_variable_bound_test.dart
diff --git a/tests/compiler/dart2js/type_variable_bound_test.dart b/tests/compiler/dart2js/type_variable_bound_test.dart
index d8a6903a20c83fa8a1add9b2718062f54ea141ef..544d664a04668f7f23d26d3569cbc1115fd3fcf9 100644
--- a/tests/compiler/dart2js/type_variable_bound_test.dart
+++ b/tests/compiler/dart2js/type_variable_bound_test.dart
@@ -17,141 +17,136 @@ Future compile(String source) {
});
}
-test(String source, {var errors, var warnings}) {
+Future test(String source, {var errors, var warnings}) async{
if (errors == null) errors = [];
if (errors is! List) errors = [errors];
if (warnings == null) warnings = [];
if (warnings is! List) warnings = [warnings];
- asyncTest(() => compile(source).then((compiler) {
- DiagnosticCollector collector = compiler.diagnosticCollector;
- Expect.equals(!errors.isEmpty, compiler.compilationFailed);
- Expect.equals(errors.length, collector.errors.length,
- 'unexpected error count: ${collector.errors.length} '
- 'expected ${errors.length}');
- Expect.equals(warnings.length, collector.warnings.length,
- 'unexpected warning count: ${collector.warnings.length} '
- 'expected ${warnings.length}');
-
- for (int i = 0 ; i < errors.length ; i++) {
- Expect.equals(errors[i], collector.errors.elementAt(i).message.kind);
- }
- for (int i = 0 ; i < warnings.length ; i++) {
- Expect.equals(warnings[i], collector.warnings.elementAt(i).message.kind);
- }
- }));
+ var compiler = await compile(source);
+ DiagnosticCollector collector = compiler.diagnosticCollector;
+ Expect.equals(!errors.isEmpty, compiler.compilationFailed);
+ Expect.equals(errors.length, collector.errors.length,
+ 'unexpected error count: ${collector.errors.length} '
+ 'expected ${errors.length}');
+ Expect.equals(warnings.length, collector.warnings.length,
+ 'unexpected warning count: ${collector.warnings.length} '
+ 'expected ${warnings.length}');
+
+ for (int i = 0 ; i < errors.length ; i++) {
+ Expect.equals(errors[i], collector.errors.elementAt(i).message.kind);
+ }
+ for (int i = 0 ; i < warnings.length ; i++) {
+ Expect.equals(warnings[i], collector.warnings.elementAt(i).message.kind);
+ }
}
-test1() {
- asyncTest(() => compile(r"""
+Future test1() async {
+ var compiler = await compile(r"""
class A<T extends T> {}
void main() {
new A();
}
-""").then((compiler) {
- DiagnosticCollector collector = compiler.diagnosticCollector;
- Expect.isFalse(compiler.compilationFailed);
- Expect.isTrue(collector.errors.isEmpty,
- 'unexpected errors: ${collector.errors}');
- Expect.equals(1, collector.warnings.length,
- 'expected exactly one warning, but got ${collector.warnings}');
-
- print(collector.warnings.elementAt(0));
- Expect.equals(MessageKind.CYCLIC_TYPE_VARIABLE,
- collector.warnings.elementAt(0).message.kind);
- Expect.equals("T",
- collector.warnings.elementAt(0).message.arguments['typeVariableName']);
- }));
+""");
+ DiagnosticCollector collector = compiler.diagnosticCollector;
+ Expect.isFalse(compiler.compilationFailed);
+ Expect.isTrue(collector.errors.isEmpty,
+ 'unexpected errors: ${collector.errors}');
+ Expect.equals(1, collector.warnings.length,
+ 'expected exactly one warning, but got ${collector.warnings}');
+
+ print(collector.warnings.elementAt(0));
+ Expect.equals(MessageKind.CYCLIC_TYPE_VARIABLE,
+ collector.warnings.elementAt(0).message.kind);
+ Expect.equals("T",
+ collector.warnings.elementAt(0).message.arguments['typeVariableName']);
}
-test2() {
- asyncTest(() => compile(r"""
+Future test2() async {
+ var compiler = await compile(r"""
class B<T extends S, S extends T> {}
void main() {
new B();
}
-""").then((compiler) {
- DiagnosticCollector collector = compiler.diagnosticCollector;
- Expect.isFalse(compiler.compilationFailed);
- print(collector.errors);
- Expect.isTrue(collector.errors.isEmpty, 'unexpected errors');
- Expect.equals(2, collector.warnings.length,
- 'expected exactly two errors, but got ${collector.warnings}');
-
- Expect.equals(MessageKind.CYCLIC_TYPE_VARIABLE,
- collector.warnings.elementAt(0).message.kind);
- Expect.equals("T",
- collector.warnings.elementAt(0).message.arguments['typeVariableName']);
-
- Expect.equals(MessageKind.CYCLIC_TYPE_VARIABLE,
- collector.warnings.elementAt(1).message.kind);
- Expect.equals("S",
- collector.warnings.elementAt(1).message.arguments['typeVariableName']);
- }));
+""");
+ DiagnosticCollector collector = compiler.diagnosticCollector;
+ Expect.isFalse(compiler.compilationFailed);
+ print(collector.errors);
+ Expect.isTrue(collector.errors.isEmpty, 'unexpected errors');
+ Expect.equals(2, collector.warnings.length,
+ 'expected exactly two errors, but got ${collector.warnings}');
+
+ Expect.equals(MessageKind.CYCLIC_TYPE_VARIABLE,
+ collector.warnings.elementAt(0).message.kind);
+ Expect.equals("T",
+ collector.warnings.elementAt(0).message.arguments['typeVariableName']);
+
+ Expect.equals(MessageKind.CYCLIC_TYPE_VARIABLE,
+ collector.warnings.elementAt(1).message.kind);
+ Expect.equals("S",
+ collector.warnings.elementAt(1).message.arguments['typeVariableName']);
}
-test3() {
- asyncTest(() => compile(r"""
+Future test3() async {
+ var compiler = await compile(r"""
class C<T extends S, S extends U, U extends T> {}
void main() {
new C();
}
-""").then((compiler) {
- DiagnosticCollector collector = compiler.diagnosticCollector;
- Expect.isFalse(compiler.compilationFailed);
- print(collector.errors);
- Expect.isTrue(collector.errors.isEmpty, 'unexpected errors');
- Expect.equals(3, collector.warnings.length,
- 'expected exactly one error, but got ${collector.warnings}');
-
- Expect.equals(MessageKind.CYCLIC_TYPE_VARIABLE,
- collector.warnings.elementAt(0).message.kind);
- Expect.equals("T",
- collector.warnings.elementAt(0).message.arguments['typeVariableName']);
-
- Expect.equals(MessageKind.CYCLIC_TYPE_VARIABLE,
- collector.warnings.elementAt(1).message.kind);
- Expect.equals("S",
- collector.warnings.elementAt(1).message.arguments['typeVariableName']);
-
- Expect.equals(MessageKind.CYCLIC_TYPE_VARIABLE,
- collector.warnings.elementAt(2).message.kind);
- Expect.equals("U",
- collector.warnings.elementAt(2).message.arguments['typeVariableName']);
- }));
+""");
+ DiagnosticCollector collector = compiler.diagnosticCollector;
+ Expect.isFalse(compiler.compilationFailed);
+ print(collector.errors);
+ Expect.isTrue(collector.errors.isEmpty, 'unexpected errors');
+ Expect.equals(3, collector.warnings.length,
+ 'expected exactly one error, but got ${collector.warnings}');
+
+ Expect.equals(MessageKind.CYCLIC_TYPE_VARIABLE,
+ collector.warnings.elementAt(0).message.kind);
+ Expect.equals("T",
+ collector.warnings.elementAt(0).message.arguments['typeVariableName']);
+
+ Expect.equals(MessageKind.CYCLIC_TYPE_VARIABLE,
+ collector.warnings.elementAt(1).message.kind);
+ Expect.equals("S",
+ collector.warnings.elementAt(1).message.arguments['typeVariableName']);
+
+ Expect.equals(MessageKind.CYCLIC_TYPE_VARIABLE,
+ collector.warnings.elementAt(2).message.kind);
+ Expect.equals("U",
+ collector.warnings.elementAt(2).message.arguments['typeVariableName']);
}
-test4() {
- asyncTest(() => compile(r"""
+Future test4() async {
+ var compiler = await compile(r"""
class D<T extends S, S extends U, U extends S> {}
void main() {
new D();
}
-""").then((compiler) {
- DiagnosticCollector collector = compiler.diagnosticCollector;
- Expect.isFalse(compiler.compilationFailed);
- print(collector.errors);
- Expect.isTrue(collector.errors.isEmpty, 'unexpected errors');
- Expect.equals(2, collector.warnings.length,
- 'expected exactly one error, but got ${collector.warnings}');
-
- Expect.equals(MessageKind.CYCLIC_TYPE_VARIABLE,
- collector.warnings.elementAt(0).message.kind);
- Expect.equals("S",
- collector.warnings.elementAt(0).message.arguments['typeVariableName']);
-
- Expect.equals(MessageKind.CYCLIC_TYPE_VARIABLE,
- collector.warnings.elementAt(1).message.kind);
- Expect.equals("U",
- collector.warnings.elementAt(1).message.arguments['typeVariableName']);
- }));
+""");
+ DiagnosticCollector collector = compiler.diagnosticCollector;
+ Expect.isFalse(compiler.compilationFailed);
+ print(collector.errors);
+ Expect.isTrue(collector.errors.isEmpty, 'unexpected errors');
+ Expect.equals(2, collector.warnings.length,
+ 'expected exactly one error, but got ${collector.warnings}');
+
+ Expect.equals(MessageKind.CYCLIC_TYPE_VARIABLE,
+ collector.warnings.elementAt(0).message.kind);
+ Expect.equals("S",
+ collector.warnings.elementAt(0).message.arguments['typeVariableName']);
+
+ Expect.equals(MessageKind.CYCLIC_TYPE_VARIABLE,
+ collector.warnings.elementAt(1).message.kind);
+ Expect.equals("U",
+ collector.warnings.elementAt(1).message.arguments['typeVariableName']);
}
-test5() {
- test(r"""
+Future test5() {
+ return test(r"""
class A<T extends num> {}
void main() {
@@ -164,8 +159,8 @@ void main() {
""");
}
-test6() {
- test(r"""
+Future test6() {
+ return test(r"""
class A<T extends num> {}
void main() {
@@ -174,8 +169,8 @@ void main() {
""", warnings: MessageKind.INVALID_TYPE_VARIABLE_BOUND);
}
-test7() {
- test(r"""
+Future test7() {
+ return test(r"""
class A<T extends num> {}
class B<T> extends A<T> {} // Warning produced here.
@@ -186,8 +181,8 @@ void main() {
""", warnings: MessageKind.INVALID_TYPE_VARIABLE_BOUND);
}
-test8() {
- test(r"""
+Future test8() {
+ return test(r"""
class B<T extends B<T>> {}
class C<T extends B<T>> extends B<T> {}
class D<T extends C<T>> extends C<T> {}
@@ -213,8 +208,8 @@ void main() {
""");
}
-test9() {
- test(r"""
+Future test9() {
+ return test(r"""
class B<T extends B<T>> {}
class C<T extends B<T>> extends B<T> {}
class D<T extends C<T>> extends C<T> {}
@@ -229,8 +224,8 @@ void main() {
MessageKind.INVALID_TYPE_VARIABLE_BOUND]);
}
-test10() {
- test(r"""
+Future test10() {
+ return test(r"""
class A {
const A();
}
@@ -246,8 +241,8 @@ main() {
// TODO(het): The error is reported twice because both the Dart and JS constant
// compilers are run on the const constructor, investigate why.
-test11() {
- test(r"""
+Future test11() {
+ return test(r"""
class A {
const A();
}
@@ -265,15 +260,17 @@ main() {
}
main() {
- test1();
- test2();
- test3();
- test4();
- test5();
- test6();
- test7();
- test8();
- test9();
- test10();
- test11();
+ asyncTest(() async {
+ await test1();
+ await test2();
+ await test3();
+ await test4();
+ await test5();
+ await test6();
+ await test7();
+ await test8();
+ await test9();
+ await test10();
+ await test11();
+ });
}
« no previous file with comments | « tests/compiler/dart2js/message_span_test.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698