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

Side by Side Diff: pkg/analyzer/test/src/task/dart_test.dart

Issue 1183773002: Add self-reference sources into INCLUDED_PARTS. (Closed) Base URL: git@github.com:dart-lang/sdk.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 | « pkg/analyzer/test/generated/compile_time_error_code_test.dart ('k') | no next file » | 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 library test.src.task.dart_test; 5 library test.src.task.dart_test;
6 6
7 import 'package:analyzer/src/context/cache.dart'; 7 import 'package:analyzer/src/context/cache.dart';
8 import 'package:analyzer/src/generated/ast.dart'; 8 import 'package:analyzer/src/generated/ast.dart';
9 import 'package:analyzer/src/generated/constant.dart'; 9 import 'package:analyzer/src/generated/constant.dart';
10 import 'package:analyzer/src/generated/element.dart'; 10 import 'package:analyzer/src/generated/element.dart';
(...skipping 2159 matching lines...) Expand 10 before | Expand all | Expand 10 after
2170 computeResult(new LibrarySpecificUnit(library, part), LIBRARY_UNIT_ERRORS); 2170 computeResult(new LibrarySpecificUnit(library, part), LIBRARY_UNIT_ERRORS);
2171 expect(task, new isInstanceOf<LibraryUnitErrorsTask>()); 2171 expect(task, new isInstanceOf<LibraryUnitErrorsTask>());
2172 expect(outputs, hasLength(1)); 2172 expect(outputs, hasLength(1));
2173 List<AnalysisError> errors = outputs[LIBRARY_UNIT_ERRORS]; 2173 List<AnalysisError> errors = outputs[LIBRARY_UNIT_ERRORS];
2174 expect(errors, hasLength(0)); 2174 expect(errors, hasLength(0));
2175 } 2175 }
2176 } 2176 }
2177 2177
2178 @reflectiveTest 2178 @reflectiveTest
2179 class ParseDartTaskTest extends _AbstractDartTaskTest { 2179 class ParseDartTaskTest extends _AbstractDartTaskTest {
2180 Source source;
2181
2180 test_buildInputs() { 2182 test_buildInputs() {
2181 Map<String, TaskInput> inputs = ParseDartTask.buildInputs(emptySource); 2183 Map<String, TaskInput> inputs = ParseDartTask.buildInputs(emptySource);
2182 expect(inputs, isNotNull); 2184 expect(inputs, isNotNull);
2183 expect(inputs.keys, unorderedEquals([ 2185 expect(inputs.keys, unorderedEquals([
2184 ParseDartTask.LINE_INFO_INPUT_NAME, 2186 ParseDartTask.LINE_INFO_INPUT_NAME,
2185 ParseDartTask.MODIFICATION_TIME_INPUT_NAME, 2187 ParseDartTask.MODIFICATION_TIME_INPUT_NAME,
2186 ParseDartTask.TOKEN_STREAM_INPUT_NAME 2188 ParseDartTask.TOKEN_STREAM_INPUT_NAME
2187 ])); 2189 ]));
2188 } 2190 }
2189 2191
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
2285 expect(outputs[EXPLICITLY_IMPORTED_LIBRARIES], hasLength(1)); 2287 expect(outputs[EXPLICITLY_IMPORTED_LIBRARIES], hasLength(1));
2286 expect(outputs[EXPORTED_LIBRARIES], hasLength(1)); 2288 expect(outputs[EXPORTED_LIBRARIES], hasLength(1));
2287 _assertHasCore(outputs[IMPORTED_LIBRARIES], 2); 2289 _assertHasCore(outputs[IMPORTED_LIBRARIES], 2);
2288 expect(outputs[INCLUDED_PARTS], hasLength(1)); 2290 expect(outputs[INCLUDED_PARTS], hasLength(1));
2289 expect(outputs[PARSE_ERRORS], hasLength(1)); 2291 expect(outputs[PARSE_ERRORS], hasLength(1));
2290 expect(outputs[PARSED_UNIT], isNotNull); 2292 expect(outputs[PARSED_UNIT], isNotNull);
2291 expect(outputs[SOURCE_KIND], SourceKind.LIBRARY); 2293 expect(outputs[SOURCE_KIND], SourceKind.LIBRARY);
2292 expect(outputs[UNITS], hasLength(2)); 2294 expect(outputs[UNITS], hasLength(2));
2293 } 2295 }
2294 2296
2297 test_perform_library_selfReferenceAsPart() {
2298 _performParseTask(r'''
2299 library lib;
2300 part 'test.dart';
2301 ''');
2302 expect(outputs[INCLUDED_PARTS], unorderedEquals(<Source>[source]));
2303 }
2304
2295 test_perform_part() { 2305 test_perform_part() {
2296 _performParseTask(r''' 2306 _performParseTask(r'''
2297 part of lib; 2307 part of lib;
2298 class B {}'''); 2308 class B {}''');
2299 expect(outputs, hasLength(8)); 2309 expect(outputs, hasLength(8));
2300 expect(outputs[EXPLICITLY_IMPORTED_LIBRARIES], hasLength(0)); 2310 expect(outputs[EXPLICITLY_IMPORTED_LIBRARIES], hasLength(0));
2301 expect(outputs[EXPORTED_LIBRARIES], hasLength(0)); 2311 expect(outputs[EXPORTED_LIBRARIES], hasLength(0));
2302 _assertHasCore(outputs[IMPORTED_LIBRARIES], 1); 2312 _assertHasCore(outputs[IMPORTED_LIBRARIES], 1);
2303 expect(outputs[INCLUDED_PARTS], hasLength(0)); 2313 expect(outputs[INCLUDED_PARTS], hasLength(0));
2304 expect(outputs[PARSE_ERRORS], hasLength(0)); 2314 expect(outputs[PARSE_ERRORS], hasLength(0));
2305 expect(outputs[PARSED_UNIT], isNotNull); 2315 expect(outputs[PARSED_UNIT], isNotNull);
2306 expect(outputs[SOURCE_KIND], SourceKind.PART); 2316 expect(outputs[SOURCE_KIND], SourceKind.PART);
2307 expect(outputs[UNITS], hasLength(1)); 2317 expect(outputs[UNITS], hasLength(1));
2308 } 2318 }
2309 2319
2310 void _performParseTask(String content) { 2320 void _performParseTask(String content) {
2311 AnalysisTarget target = newSource('/test.dart', content); 2321 source = newSource('/test.dart', content);
2312 computeResult(target, PARSED_UNIT); 2322 computeResult(source, PARSED_UNIT);
2313 expect(task, new isInstanceOf<ParseDartTask>()); 2323 expect(task, new isInstanceOf<ParseDartTask>());
2314 } 2324 }
2315 2325
2316 static void _assertHasCore(List<Source> sources, int lenght) { 2326 static void _assertHasCore(List<Source> sources, int lenght) {
2317 expect(sources, hasLength(lenght)); 2327 expect(sources, hasLength(lenght));
2318 expect(sources, contains(predicate((Source s) { 2328 expect(sources, contains(predicate((Source s) {
2319 return s.fullName.endsWith('core.dart'); 2329 return s.fullName.endsWith('core.dart');
2320 }))); 2330 })));
2321 } 2331 }
2322 } 2332 }
(...skipping 396 matching lines...) Expand 10 before | Expand all | Expand 10 after
2719 /** 2729 /**
2720 * Fill [errorListener] with [result] errors in the current [task]. 2730 * Fill [errorListener] with [result] errors in the current [task].
2721 */ 2731 */
2722 void _fillErrorListener(ResultDescriptor<List<AnalysisError>> result) { 2732 void _fillErrorListener(ResultDescriptor<List<AnalysisError>> result) {
2723 List<AnalysisError> errors = task.outputs[result]; 2733 List<AnalysisError> errors = task.outputs[result];
2724 expect(errors, isNotNull, reason: result.name); 2734 expect(errors, isNotNull, reason: result.name);
2725 errorListener = new GatheringErrorListener(); 2735 errorListener = new GatheringErrorListener();
2726 errorListener.addAll(errors); 2736 errorListener.addAll(errors);
2727 } 2737 }
2728 } 2738 }
OLDNEW
« no previous file with comments | « pkg/analyzer/test/generated/compile_time_error_code_test.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698