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

Side by Side Diff: tests/compiler/dart2js/mirror_tree_shaking_test.dart

Issue 17759007: First pass at asynchronous input loading in dart2js. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Updated cf. comments Created 7 years, 3 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 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. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 // Test that tree-shaking hasn't been turned off. 5 // Test that tree-shaking hasn't been turned off.
6 6
7 import 'package:expect/expect.dart'; 7 import 'package:expect/expect.dart';
8 import "package:async_helper/async_helper.dart";
8 import 'memory_source_file_helper.dart'; 9 import 'memory_source_file_helper.dart';
9 10
10 import '../../../sdk/lib/_internal/compiler/implementation/dart2jslib.dart' 11 import '../../../sdk/lib/_internal/compiler/implementation/dart2jslib.dart'
11 show NullSink; 12 show NullSink;
12 13
13 import '../../../sdk/lib/_internal/compiler/compiler.dart' 14 import '../../../sdk/lib/_internal/compiler/compiler.dart'
14 show Diagnostic; 15 show Diagnostic;
15 16
16 import 'dart:async'; 17 import 'dart:async';
17 18
18 main() { 19 main() {
19 Uri script = currentDirectory.resolve(nativeToUriPath(Platform.script)); 20 Uri script = currentDirectory.resolve(nativeToUriPath(Platform.script));
20 Uri libraryRoot = script.resolve('../../../sdk/'); 21 Uri libraryRoot = script.resolve('../../../sdk/');
21 Uri packageRoot = script.resolve('./packages/'); 22 Uri packageRoot = script.resolve('./packages/');
22 23
23 MemorySourceFileProvider.MEMORY_SOURCE_FILES = MEMORY_SOURCE_FILES; 24 var provider = new MemorySourceFileProvider(MEMORY_SOURCE_FILES);
24 var provider = new MemorySourceFileProvider();
25 void diagnosticHandler(Uri uri, int begin, int end, 25 void diagnosticHandler(Uri uri, int begin, int end,
26 String message, Diagnostic kind) { 26 String message, Diagnostic kind) {
27 if (kind == Diagnostic.VERBOSE_INFO 27 if (kind == Diagnostic.VERBOSE_INFO
28 || kind == Diagnostic.WARNING 28 || kind == Diagnostic.WARNING
29 || kind == Diagnostic.HINT) { 29 || kind == Diagnostic.HINT) {
30 return; 30 return;
31 } 31 }
32 throw '$uri:$begin:$end:$message:$kind'; 32 throw '$uri:$begin:$end:$message:$kind';
33 } 33 }
34 34
35 EventSink<String> outputProvider(String name, String extension) { 35 EventSink<String> outputProvider(String name, String extension) {
36 return new NullSink('$name.$extension'); 36 return new NullSink('$name.$extension');
37 } 37 }
38 38
39 Compiler compiler = new Compiler(provider.readStringFromUri, 39 Compiler compiler = new Compiler(provider.readStringFromUri,
40 outputProvider, 40 outputProvider,
41 diagnosticHandler, 41 diagnosticHandler,
42 libraryRoot, 42 libraryRoot,
43 packageRoot, 43 packageRoot,
44 []); 44 []);
45 compiler.run(Uri.parse('memory:main.dart')); 45 asyncTest(() => compiler.run(Uri.parse('memory:main.dart')).then((_) {
46 Expect.isFalse(compiler.compilationFailed); 46 Expect.isFalse(compiler.compilationFailed);
47 Expect.isFalse(compiler.enqueuer.resolution.hasEnqueuedEverything); 47 Expect.isFalse(compiler.enqueuer.resolution.hasEnqueuedEverything);
48 Expect.isFalse(compiler.enqueuer.codegen.hasEnqueuedEverything); 48 Expect.isFalse(compiler.enqueuer.codegen.hasEnqueuedEverything);
49 Expect.isFalse(compiler.disableTypeInference); 49 Expect.isFalse(compiler.disableTypeInference);
50 Expect.isFalse(compiler.backend.hasRetainedMetadata); 50 Expect.isFalse(compiler.backend.hasRetainedMetadata);
51 }));
51 } 52 }
52 53
53 const Map MEMORY_SOURCE_FILES = const { 54 const Map MEMORY_SOURCE_FILES = const {
54 'main.dart': r""" 55 'main.dart': r"""
55 import 'dart:mirrors'; 56 import 'dart:mirrors';
56 57
57 class Foo { 58 class Foo {
58 noSuchMethod(invocation) { 59 noSuchMethod(invocation) {
59 print('Invoked ${MirrorSystem.getName(invocation.memberName)}'); 60 print('Invoked ${MirrorSystem.getName(invocation.memberName)}');
60 return reflect('foobar').delegate(invocation); 61 return reflect('foobar').delegate(invocation);
61 } 62 }
62 } 63 }
63 64
64 void main() { 65 void main() {
65 print(new Foo().substring(3)); 66 print(new Foo().substring(3));
66 } 67 }
67 """, 68 """,
68 }; 69 };
OLDNEW
« no previous file with comments | « tests/compiler/dart2js/mirror_helper_unique_minification_test.dart ('k') | tests/compiler/dart2js/mirrors_lookup_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698