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

Side by Side Diff: pkg/front_end/test/fasta/testing/suite.dart

Issue 2986303003: Switch FE to use the libraries.json format. (Closed)
Patch Set: Created 3 years, 4 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
1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2016, 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.md file. 3 // BSD-style license that can be found in the LICENSE.md file.
4 4
5 library fasta.testing.suite; 5 library fasta.testing.suite;
6 6
7 import 'dart:async' show Future; 7 import 'dart:async' show Future;
8 8
9 import 'dart:io' show File; 9 import 'dart:io' show File;
10 10
11 import 'dart:convert' show JSON; 11 import 'dart:convert' show JSON;
12 12
13 import 'package:front_end/physical_file_system.dart' show PhysicalFileSystem; 13 import 'package:front_end/physical_file_system.dart' show PhysicalFileSystem;
14 14
15 import 'package:front_end/src/base/libraries_spec.dart'
16 show TargetLibrariesSpecification;
17
15 import 'package:front_end/src/fasta/testing/validating_instrumentation.dart' 18 import 'package:front_end/src/fasta/testing/validating_instrumentation.dart'
16 show ValidatingInstrumentation; 19 show ValidatingInstrumentation;
17 20
18 import 'package:front_end/src/fasta/testing/patched_sdk_location.dart' 21 import 'package:front_end/src/fasta/testing/patched_sdk_location.dart'
19 show computeDartVm, computePatchedSdk; 22 show computeDartVm, computePatchedSdk;
20 import 'package:front_end/src/fasta/uri_translator_impl.dart'; 23 import 'package:front_end/src/fasta/uri_translator_impl.dart';
21 24
22 import 'package:kernel/ast.dart' show Library, Program; 25 import 'package:kernel/ast.dart' show Library, Program;
23 26
24 import 'package:testing/testing.dart' 27 import 'package:testing/testing.dart'
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
148 loadProgramFromBytes(new File.fromUri(outlineUri).readAsBytesSync()); 151 loadProgramFromBytes(new File.fromUri(outlineUri).readAsBytesSync());
149 } 152 }
150 return outline; 153 return outline;
151 } 154 }
152 155
153 static Future<FastaContext> create( 156 static Future<FastaContext> create(
154 Chain suite, Map<String, String> environment) async { 157 Chain suite, Map<String, String> environment) async {
155 Uri sdk = await computePatchedSdk(); 158 Uri sdk = await computePatchedSdk();
156 Uri vm = computeDartVm(sdk); 159 Uri vm = computeDartVm(sdk);
157 Uri packages = Uri.base.resolve(".packages"); 160 Uri packages = Uri.base.resolve(".packages");
158 UriTranslator uriTranslator = await UriTranslatorImpl 161 var options = new ProcessedOptions(new CompilerOptions()
159 .parse(PhysicalFileSystem.instance, sdk, packages: packages); 162 ..sdkRoot = sdk
163 ..packagesFileUri = packages);
164 UriTranslator uriTranslator = await options.getUriTranslator();
160 bool strongMode = environment.containsKey(STRONG_MODE); 165 bool strongMode = environment.containsKey(STRONG_MODE);
161 bool updateExpectations = environment["updateExpectations"] == "true"; 166 bool updateExpectations = environment["updateExpectations"] == "true";
162 bool updateComments = environment["updateComments"] == "true"; 167 bool updateComments = environment["updateComments"] == "true";
163 bool skipVm = environment["skipVm"] == "true"; 168 bool skipVm = environment["skipVm"] == "true";
164 String astKindString = environment[AST_KIND_INDEX]; 169 String astKindString = environment[AST_KIND_INDEX];
165 AstKind astKind = 170 AstKind astKind =
166 astKindString == null ? null : AstKind.values[int.parse(astKindString)]; 171 astKindString == null ? null : AstKind.values[int.parse(astKindString)];
167 return new FastaContext( 172 return new FastaContext(
168 vm, 173 vm,
169 strongMode, 174 strongMode,
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
235 CompilerContext.current.disableColors(); 240 CompilerContext.current.disableColors();
236 Program platformOutline = await context.loadPlatformOutline(); 241 Program platformOutline = await context.loadPlatformOutline();
237 Ticker ticker = new Ticker(); 242 Ticker ticker = new Ticker();
238 DillTarget dillTarget = new DillTarget(ticker, context.uriTranslator, 243 DillTarget dillTarget = new DillTarget(ticker, context.uriTranslator,
239 new TestVmFastaTarget(new TargetFlags(strongMode: strongMode))); 244 new TestVmFastaTarget(new TargetFlags(strongMode: strongMode)));
240 platformOutline.unbindCanonicalNames(); 245 platformOutline.unbindCanonicalNames();
241 dillTarget.loader.appendLibraries(platformOutline); 246 dillTarget.loader.appendLibraries(platformOutline);
242 // We create a new URI translator to avoid reading platform libraries from 247 // We create a new URI translator to avoid reading platform libraries from
243 // file system. 248 // file system.
244 UriTranslatorImpl uriTranslator = new UriTranslatorImpl( 249 UriTranslatorImpl uriTranslator = new UriTranslatorImpl(
245 const <String, Uri>{}, 250 const TargetLibrariesSpecification('vm'),
246 const <String, List<Uri>>{},
247 context.uriTranslator.packages); 251 context.uriTranslator.packages);
248 KernelTarget sourceTarget = astKind == AstKind.Analyzer 252 KernelTarget sourceTarget = astKind == AstKind.Analyzer
249 ? new AnalyzerTarget(dillTarget, uriTranslator, strongMode) 253 ? new AnalyzerTarget(dillTarget, uriTranslator, strongMode)
250 : new KernelTarget( 254 : new KernelTarget(
251 PhysicalFileSystem.instance, false, dillTarget, uriTranslator); 255 PhysicalFileSystem.instance, false, dillTarget, uriTranslator);
252 256
253 Program p; 257 Program p;
254 try { 258 try {
255 sourceTarget.read(description.uri); 259 sourceTarget.read(description.uri);
256 await dillTarget.buildOutlines(); 260 await dillTarget.buildOutlines();
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
320 } 324 }
321 } 325 }
322 326
323 void performGlobalTransformations(CoreTypes coreTypes, Program program, 327 void performGlobalTransformations(CoreTypes coreTypes, Program program,
324 {void logger(String msg)}) { 328 {void logger(String msg)}) {
325 if (enabled) { 329 if (enabled) {
326 super.performGlobalTransformations(coreTypes, program, logger: logger); 330 super.performGlobalTransformations(coreTypes, program, logger: logger);
327 } 331 }
328 } 332 }
329 } 333 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698