Index: tests/compiler/dart2js/memory_compiler.dart |
diff --git a/tests/compiler/dart2js/memory_compiler.dart b/tests/compiler/dart2js/memory_compiler.dart |
index de75d6c62322e164edafa8a8261cf6d631f7982d..88bc8e217c5f6fd8b1ad541ed206829bdb2750db 100644 |
--- a/tests/compiler/dart2js/memory_compiler.dart |
+++ b/tests/compiler/dart2js/memory_compiler.dart |
@@ -10,13 +10,16 @@ import 'package:compiler/src/dart2jslib.dart' |
show NullSink; |
import 'package:compiler/compiler.dart' |
- show Diagnostic, DiagnosticHandler, CompilerOutputProvider; |
+ show Diagnostic, DiagnosticHandler, CompilerOutputProvider; |
import 'dart:async'; |
import 'package:compiler/src/mirrors/source_mirrors.dart'; |
import 'package:compiler/src/mirrors/analyze.dart'; |
+import 'package:compiler/src/library_loader.dart' |
+ show LoadedLibraries; |
+ |
class DiagnosticMessage { |
final Uri uri; |
final int begin; |
@@ -183,7 +186,7 @@ Compiler compilerFor(Map<String,String> memorySourceFiles, |
}); |
// TODO(johnniwinther): Assert that no libraries are loaded lazily from |
// this call. |
- compiler.onLibrariesLoaded(copiedLibraries); |
+ compiler.onLibrariesLoaded(new MemoryLoadedLibraries(copiedLibraries)); |
compiler.symbolConstructor = cachedCompiler.symbolConstructor; |
compiler.mirrorSystemClass = cachedCompiler.mirrorSystemClass; |
@@ -229,6 +232,27 @@ Compiler compilerFor(Map<String,String> memorySourceFiles, |
return compiler; |
} |
+class MemoryLoadedLibraries implements LoadedLibraries { |
+ final Map copiedLibraries; |
+ |
+ MemoryLoadedLibraries(this.copiedLibraries); |
+ |
+ @override |
+ bool containsLibrary(Uri uri) => copiedLibraries.containsKey(uri); |
+ |
+ @override |
+ void forEachImportChain(f) {} |
+ |
+ @override |
+ void forEachLibrary(f) {} |
+ |
+ @override |
+ getLibrary(Uri uri) => copiedLibraries[uri]; |
+ |
+ @override |
+ Uri get rootUri => null; |
+} |
+ |
Future<MirrorSystem> mirrorSystemFor(Map<String,String> memorySourceFiles, |
{DiagnosticHandler diagnosticHandler, |
List<String> options: const [], |