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

Side by Side Diff: tests/compiler/dart2js/reexport_handled_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 library reexport_handled_test; 5 library reexport_handled_test;
6 6
7 import "package:expect/expect.dart"; 7 import "package:expect/expect.dart";
8 import "package:async_helper/async_helper.dart";
8 import 'mock_compiler.dart'; 9 import 'mock_compiler.dart';
9 import '../../../sdk/lib/_internal/compiler/implementation/elements/elements.dar t' 10 import '../../../sdk/lib/_internal/compiler/implementation/elements/elements.dar t'
10 show Element, 11 show Element,
11 LibraryElement; 12 LibraryElement;
12 13
13 final exportingLibraryUri = Uri.parse('exporting.dart'); 14 final exportingLibraryUri = Uri.parse('exporting.dart');
14 const String EXPORTING_LIBRARY_SOURCE = ''' 15 const String EXPORTING_LIBRARY_SOURCE = '''
15 library exporting; 16 library exporting;
16 var foo; 17 var foo;
17 '''; 18 ''';
18 19
19 final reexportingLibraryUri = Uri.parse('reexporting.dart'); 20 final reexportingLibraryUri = Uri.parse('reexporting.dart');
20 const String REEXPORTING_LIBRARY_SOURCE = ''' 21 const String REEXPORTING_LIBRARY_SOURCE = '''
21 library reexporting; 22 library reexporting;
22 export 'exporting.dart'; 23 export 'exporting.dart';
23 '''; 24 ''';
24 25
25 void main() { 26 void main() {
26 var compiler = new MockCompiler(); 27 var compiler = new MockCompiler();
27 compiler.registerSource(exportingLibraryUri, EXPORTING_LIBRARY_SOURCE); 28 compiler.registerSource(exportingLibraryUri, EXPORTING_LIBRARY_SOURCE);
28 compiler.registerSource(reexportingLibraryUri, REEXPORTING_LIBRARY_SOURCE); 29 compiler.registerSource(reexportingLibraryUri, REEXPORTING_LIBRARY_SOURCE);
29 30
30 // Load exporting library before the reexporting library. 31 // Load exporting library before the reexporting library.
31 var exportingLibrary = compiler.libraryLoader.loadLibrary( 32 asyncTest(() => compiler.libraryLoader.loadLibrary(
32 exportingLibraryUri, null, exportingLibraryUri); 33 exportingLibraryUri, null, exportingLibraryUri).then((exportingLibrary) {
33 Expect.isTrue(exportingLibrary.exportsHandled); 34 Expect.isTrue(exportingLibrary.exportsHandled);
34 var foo = findInExports(exportingLibrary, 'foo'); 35 var foo = findInExports(exportingLibrary, 'foo');
35 Expect.isNotNull(foo); 36 Expect.isNotNull(foo);
36 Expect.isTrue(foo.isField()); 37 Expect.isTrue(foo.isField());
37 38
38 // Load reexporting library when exports are handled on the exporting library. 39 // Load reexporting library when exports are handled on the exporting librar y.
39 var reexportingLibrary = compiler.libraryLoader.loadLibrary( 40 return compiler.libraryLoader.loadLibrary(
40 reexportingLibraryUri, null, reexportingLibraryUri); 41 reexportingLibraryUri, null, reexportingLibraryUri);
41 foo = findInExports(reexportingLibrary, 'foo'); 42 }).then((reexportingLibrary) {
42 Expect.isNotNull(foo); 43 var foo = findInExports(reexportingLibrary, 'foo');
43 Expect.isTrue(foo.isField()); 44 Expect.isNotNull(foo);
45 Expect.isTrue(foo.isField());
46 }));
44 } 47 }
45 48
46 Element findInExports(LibraryElement library, String name) { 49 Element findInExports(LibraryElement library, String name) {
47 for (var export in library.exports) { 50 for (var export in library.exports) {
48 if (export.name.slowToString() == name) { 51 if (export.name.slowToString() == name) {
49 return export; 52 return export;
50 } 53 }
51 } 54 }
52 return null; 55 return null;
53 } 56 }
OLDNEW
« no previous file with comments | « tests/compiler/dart2js/private_test.dart ('k') | tests/compiler/dart2js/regress_10231_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698