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

Side by Side Diff: test/codegen_test.dart

Issue 1166683005: upgrade dependencies, including migration to package:test (Closed) Base URL: git@github.com:dart-lang/dev_compiler.git@master
Patch Set: Created 5 years, 6 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
« no previous file with comments | « test/checker/self_host_test.dart ('k') | test/dart_codegen/expect/a/a.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, 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 /// Tests code generation. 5 /// Tests code generation.
6 /// Runs Dart Dev Compiler on all input in the `codegen` directory and checks 6 /// Runs Dart Dev Compiler on all input in the `codegen` directory and checks
7 /// that the output is what we expected. 7 /// that the output is what we expected.
8 library dev_compiler.test.codegen_test; 8 library dev_compiler.test.codegen_test;
9 9
10 import 'dart:io'; 10 import 'dart:io';
11 import 'package:cli_util/cli_util.dart' show getSdkDir; 11 import 'package:cli_util/cli_util.dart' show getSdkDir;
12 import 'package:analyzer/src/generated/engine.dart' show AnalysisEngine, Logger; 12 import 'package:analyzer/src/generated/engine.dart' show AnalysisEngine, Logger;
13 import 'package:analyzer/src/generated/java_engine.dart' show CaughtException; 13 import 'package:analyzer/src/generated/java_engine.dart' show CaughtException;
14 import 'package:args/args.dart'; 14 import 'package:args/args.dart';
15 import 'package:logging/logging.dart' show Level; 15 import 'package:logging/logging.dart' show Level;
16 import 'package:path/path.dart' as path; 16 import 'package:path/path.dart' as path;
17 import 'package:unittest/unittest.dart'; 17 import 'package:test/test.dart';
18 18
19 import 'package:dev_compiler/devc.dart'; 19 import 'package:dev_compiler/devc.dart';
20 import 'package:dev_compiler/src/options.dart'; 20 import 'package:dev_compiler/src/options.dart';
21 import 'package:dev_compiler/src/dependency_graph.dart' 21 import 'package:dev_compiler/src/dependency_graph.dart'
22 show defaultRuntimeFiles; 22 show defaultRuntimeFiles;
23 import 'package:dev_compiler/src/utils.dart' 23 import 'package:dev_compiler/src/utils.dart'
24 show computeHash, computeHashFromFile; 24 show computeHash, computeHashFromFile;
25 import 'package:html/parser.dart' as html; 25 import 'package:html/parser.dart' as html;
26 26
27 import 'test_util.dart' show testDirectory;
28
27 final ArgParser argParser = new ArgParser() 29 final ArgParser argParser = new ArgParser()
28 ..addOption('dart-sdk', help: 'Dart SDK Path', defaultsTo: null) 30 ..addOption('dart-sdk', help: 'Dart SDK Path', defaultsTo: null)
29 ..addFlag('dart-gen', 31 ..addFlag('dart-gen',
30 abbr: 'd', help: 'Generate dart output', defaultsTo: false); 32 abbr: 'd', help: 'Generate dart output', defaultsTo: false);
31 33
32 main(arguments) { 34 main(arguments) {
33 if (arguments == null) arguments = []; 35 if (arguments == null) arguments = [];
34 ArgResults args = argParser.parse(arguments); 36 ArgResults args = argParser.parse(arguments);
35 var script = Platform.script.path;
36 var dartGen = args['dart-gen']; 37 var dartGen = args['dart-gen'];
37 var filePattern = new RegExp(args.rest.length > 0 ? args.rest[0] : '.'); 38 var filePattern = new RegExp(args.rest.length > 0 ? args.rest[0] : '.');
38 var compilerMessages = new StringBuffer(); 39 var compilerMessages = new StringBuffer();
39 var loggerSub; 40 var loggerSub;
40 41
41 setUp(() { 42 setUp(() {
42 compilerMessages.clear(); 43 compilerMessages.clear();
43 loggerSub = setupLogger(Level.CONFIG, compilerMessages.writeln); 44 loggerSub = setupLogger(Level.CONFIG, compilerMessages.writeln);
44 }); 45 });
45 46
46 tearDown(() { 47 tearDown(() {
47 if (loggerSub != null) { 48 if (loggerSub != null) {
48 loggerSub.cancel(); 49 loggerSub.cancel();
49 loggerSub = null; 50 loggerSub = null;
50 } 51 }
51 }); 52 });
52 53
53 var testDir = path.absolute(path.dirname(script)); 54 var inputDir = path.join(testDirectory, dartGen ? 'dart_codegen' : 'codegen');
54 var inputDir = dartGen
55 ? path.join(testDir, 'dart_codegen')
56 : path.join(testDir, 'codegen');
57 var actualDir = path.join(inputDir, 'actual'); 55 var actualDir = path.join(inputDir, 'actual');
58 var paths = new Directory(inputDir) 56 var paths = new Directory(inputDir)
59 .listSync() 57 .listSync()
60 .where((f) => f is File) 58 .where((f) => f is File)
61 .map((f) => f.path) 59 .map((f) => f.path)
62 .where((p) => p.endsWith('.dart') && filePattern.hasMatch(p)); 60 .where((p) => p.endsWith('.dart') && filePattern.hasMatch(p));
63 61
64 compile(String entryPoint, String sdkPath, {bool checkSdk: false, 62 compile(String entryPoint, String sdkPath, {bool checkSdk: false,
65 bool serverMode: false, bool sourceMaps: false, String subDir}) { 63 bool serverMode: false, bool sourceMaps: false, String subDir}) {
66 // TODO(jmesserly): add a way to specify flags in the test file, so 64 // TODO(jmesserly): add a way to specify flags in the test file, so
67 // they're more self-contained. 65 // they're more self-contained.
68 var runtimeDir = path.join( 66 var runtimeDir = path.join(path.dirname(testDirectory), 'lib', 'runtime');
69 path.dirname(path.dirname(Platform.script.path)), 'lib', 'runtime');
70 var options = new CompilerOptions( 67 var options = new CompilerOptions(
71 allowConstCasts: !dartGen, 68 allowConstCasts: !dartGen,
72 outputDir: subDir == null ? actualDir : path.join(actualDir, subDir), 69 outputDir: subDir == null ? actualDir : path.join(actualDir, subDir),
73 useColors: false, 70 useColors: false,
74 outputDart: dartGen, 71 outputDart: dartGen,
75 formatOutput: dartGen, 72 formatOutput: dartGen,
76 emitSourceMaps: sourceMaps, 73 emitSourceMaps: sourceMaps,
77 forceCompile: checkSdk, 74 forceCompile: checkSdk,
78 cheapTestFormat: checkSdk,
79 checkSdk: checkSdk, 75 checkSdk: checkSdk,
80 entryPointFile: entryPoint, 76 entryPointFile: entryPoint,
81 dartSdkPath: sdkPath, 77 dartSdkPath: sdkPath,
82 runtimeDir: runtimeDir, 78 runtimeDir: runtimeDir,
83 serverMode: serverMode, 79 serverMode: serverMode,
84 enableHashing: serverMode); 80 enableHashing: serverMode);
85 return new Compiler(options).run(); 81 return new Compiler(options).run();
86 } 82 }
87 var realSdk = getSdkDir(arguments).path; 83 var realSdk = getSdkDir(arguments).path;
88 84
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
134 AnalysisEngine.instance.logger = new PrintLogger(); 130 AnalysisEngine.instance.logger = new PrintLogger();
135 }); 131 });
136 tearDown(() { 132 tearDown(() {
137 AnalysisEngine.instance.logger = savedLogger; 133 AnalysisEngine.instance.logger = savedLogger;
138 }); 134 });
139 135
140 test('devc dart:core', () { 136 test('devc dart:core', () {
141 // Get the test SDK. We use a checked in copy so test expectations can 137 // Get the test SDK. We use a checked in copy so test expectations can
142 // be generated against a specific SDK version. 138 // be generated against a specific SDK version.
143 var testSdk = dartGen 139 var testSdk = dartGen
144 ? path.join(testDir, '..', 'tool', 'input_sdk') 140 ? path.join(testDirectory, '..', 'tool', 'input_sdk')
145 : path.join(testDir, 'generated_sdk'); 141 : path.join(testDirectory, 'generated_sdk');
146 var result = compile('dart:core', testSdk, checkSdk: true); 142 var result = compile('dart:core', testSdk, checkSdk: true);
147 var outputDir = new Directory(path.join(actualDir, 'core')); 143 var outputDir = new Directory(path.join(actualDir, 'core'));
148 var outFile = new File( 144 var outFile = new File(
149 path.join(actualDir, dartGen ? 'core/core' : 'dart/core.js')); 145 path.join(actualDir, dartGen ? 'core/core' : 'dart/core.js'));
150 expect(outFile.existsSync(), true, 146 expect(outFile.existsSync(), true,
151 reason: '${outFile.path} was created for dart:core'); 147 reason: '${outFile.path} was created for dart:core');
152 }); 148 });
153 }); 149 });
154 } 150 }
155 151
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after
282 print('[AnalysisEngine] error $message $exception'); 278 print('[AnalysisEngine] error $message $exception');
283 } 279 }
284 280
285 @override void logError2(String message, Object exception) { 281 @override void logError2(String message, Object exception) {
286 print('[AnalysisEngine] error $message $exception'); 282 print('[AnalysisEngine] error $message $exception');
287 } 283 }
288 284
289 void logInformation(String message, [CaughtException exception]) {} 285 void logInformation(String message, [CaughtException exception]) {}
290 void logInformation2(String message, Object exception) {} 286 void logInformation2(String message, Object exception) {}
291 } 287 }
OLDNEW
« no previous file with comments | « test/checker/self_host_test.dart ('k') | test/dart_codegen/expect/a/a.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698