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

Unified Diff: test/codegen_test.dart

Issue 1840203002: More analyzer updates, and handle negative_tests (Closed) Base URL: git@github.com:dart-lang/dev_compiler.git@master
Patch Set: Created 4 years, 9 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 side-by-side diff with in-line comments
Download patch
Index: test/codegen_test.dart
diff --git a/test/codegen_test.dart b/test/codegen_test.dart
index 01f5359c629671be44a47750f10a6c96ede3af41..0a3473585171aa8eddbcf45143fa75c24faf890a 100644
--- a/test/codegen_test.dart
+++ b/test/codegen_test.dart
@@ -11,17 +11,20 @@ import 'dart:io';
import 'package:analyzer/src/generated/engine.dart'
show AnalysisContext, AnalysisEngine, Logger;
import 'package:analyzer/src/generated/java_engine.dart' show CaughtException;
+import 'package:analyzer/src/generated/source_io.dart';
import 'package:args/args.dart';
+import 'package:cli_util/cli_util.dart' show getSdkDir;
import 'package:logging/logging.dart' show Level;
import 'package:path/path.dart' as path;
import 'package:test/test.dart';
import 'package:dev_compiler/devc.dart';
+import 'package:dev_compiler/src/analysis_context.dart';
import 'package:dev_compiler/src/compiler.dart' show defaultRuntimeFiles;
import 'package:dev_compiler/src/options.dart';
import 'package:dev_compiler/src/report.dart' show LogReporter;
-import 'testing.dart' show realSdkContext, testDirectory;
+import 'testing.dart' show testDirectory;
import 'multitest.dart';
final ArgParser argParser = new ArgParser()
@@ -65,12 +68,24 @@ main(arguments) {
var expectDir = path.join(inputDir, 'expect');
- BatchCompiler createCompiler(AnalysisContext context,
- {bool checkSdk: false,
+ BatchCompiler createCompiler(DartUriResolver sdkResolver, {bool checkSdk: false,
bool sourceMaps: false,
bool destructureNamedParams: false,
bool closure: false,
ModuleFormat moduleFormat: ModuleFormat.legacy}) {
+
+ String _testCodegenPath(String p1, [String p2]) =>
+ path.join(testDirectory, 'codegen', p1, p2);
+
+ var context = createAnalysisContextWithSources(new SourceResolverOptions(
+ customUrlMappings: {
+ 'package:expect/expect.dart': _testCodegenPath('expect.dart'),
+ 'package:async_helper/async_helper.dart':
+ _testCodegenPath('async_helper.dart'),
+ 'package:unittest/unittest.dart': _testCodegenPath('unittest.dart'),
+ 'package:dom/dom.dart': _testCodegenPath('sunflower', 'dom.dart')
+ }), sdkResolver: sdkResolver);
+
// TODO(jmesserly): add a way to specify flags in the test file, so
// they're more self-contained.
var runtimeDir = path.join(path.dirname(testDirectory), 'lib', 'runtime');
@@ -137,7 +152,8 @@ $compilerMessages''';
}
}
- var batchCompiler = createCompiler(realSdkContext);
+ var realSdkResolver = createSdkPathResolver(getSdkDir().path);
+ var batchCompiler = createCompiler(realSdkResolver);
var allDirs = [null];
allDirs.addAll(testDirs);
@@ -174,7 +190,7 @@ $compilerMessages''';
closure ||
destructureNamedParams ||
moduleFormat != ModuleFormat.legacy)
- ? createCompiler(realSdkContext,
+ ? createCompiler(realSdkResolver,
sourceMaps: sourceMaps,
destructureNamedParams: destructureNamedParams,
closure: closure,
@@ -207,13 +223,12 @@ $compilerMessages''';
});
test('devc dart:core', () {
- var testSdkContext = createAnalysisContextWithSources(
- new SourceResolverOptions(dartSdkPath: path.join(
- testDirectory, '..', 'tool', 'generated_sdk')));
+ var testSdkResolver = createSdkPathResolver(path.join(
+ testDirectory, '..', 'tool', 'generated_sdk'));
// Get the test SDK. We use a checked in copy so test expectations can
// be generated against a specific SDK version.
- var compiler = createCompiler(testSdkContext, checkSdk: true);
+ var compiler = createCompiler(testSdkResolver, checkSdk: true);
compile(compiler, 'dart:core');
var outFile = new File(path.join(expectDir, 'dart/core.js'));
expect(outFile.existsSync(), true,

Powered by Google App Engine
This is Rietveld 408576698