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

Side by Side Diff: tests/utils/recursive_import_test.dart

Issue 2976313002: Delete old tests that aren't used and/or useful any more. (Closed)
Patch Set: Resurrect dummy_compiler_test and recursive_import_test. Created 3 years, 5 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 unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file.
4
5 // Test of "recursive" imports using the dart2js compiler API.
6
7 import "package:expect/expect.dart";
8 import "package:async_helper/async_helper.dart";
9 import 'dart:async';
10 import 'dummy_compiler_test.dart';
11 import 'package:compiler/compiler.dart';
12
13 const String RECURSIVE_MAIN = """
14 library fisk;
15 import 'recurse/fisk.dart';
16 main() {}
17 """;
18
19 main() {
20 int count = 0;
21 Future<String> provider(Uri uri) {
22 String source;
23 if (uri.path.length > 100) {
24 // Simulate an OS error.
25 throw 'Path length exceeded';
26 } else if (uri.scheme == "main") {
27 count++;
28 source = RECURSIVE_MAIN;
29 } else if (uri.scheme == "lib") {
30 source = libProvider(uri);
31 } else {
32 return new Future.error("unexpected URI $uri");
33 }
34 return new Future.value(source);
35 }
36
37 int warningCount = 0;
38 int errorCount = 0;
39 void handler(Uri uri, int begin, int end, String message, Diagnostic kind) {
40 if (uri != null) {
41 print('$uri:$begin:$end: $kind: $message');
42 Expect.equals('main', uri.scheme);
43 if (kind == Diagnostic.WARNING) {
44 warningCount++;
45 } else if (kind == Diagnostic.ERROR) {
46 errorCount++;
47 } else {
48 throw kind;
49 }
50 } else {
51 print('$kind: $message');
52 }
53 }
54
55 asyncStart();
56 Future<CompilationResult> result = compile(
57 new Uri(scheme: 'main'),
58 new Uri(scheme: 'lib', path: '/'),
59 new Uri(scheme: 'package', path: '/'),
60 provider,
61 handler);
62 result.then((CompilationResult result) {
63 Expect.isFalse(result.isSuccess);
64 Expect.isTrue(10 < count);
65 // Two warnings for each time RECURSIVE_MAIN is read, except the
66 // first time.
67 Expect.equals(2 * (count - 1), warningCount);
68 Expect.equals(1, errorCount);
69 }, onError: (e, s) {
70 throw 'Compilation failed: $e\n$s';
71 }).then(asyncSuccess);
72 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698