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

Side by Side Diff: pkg/analyzer/test/src/context/builder_test.dart

Issue 2133873003: Handle SDK extensions in the SDK (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Created 4 years, 5 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/lib/src/generated/sdk_io.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) 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 file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library analyzer.test.src.context.context_builder_test; 5 library analyzer.test.src.context.context_builder_test;
6 6
7 import 'dart:io' as io; 7 import 'dart:io' as io;
8 8
9 import 'package:analyzer/file_system/file_system.dart'; 9 import 'package:analyzer/file_system/file_system.dart';
10 import 'package:analyzer/file_system/memory_file_system.dart'; 10 import 'package:analyzer/file_system/memory_file_system.dart';
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
44 /** 44 /**
45 * The SDK manager used by the tests; 45 * The SDK manager used by the tests;
46 */ 46 */
47 DartSdkManager sdkManager; 47 DartSdkManager sdkManager;
48 48
49 /** 49 /**
50 * The content cache used by the tests. 50 * The content cache used by the tests.
51 */ 51 */
52 ContentCache contentCache; 52 ContentCache contentCache;
53 53
54 /**
55 * The context builder to be used in the test.
56 */
57 ContextBuilder builder;
58
59 /**
60 * The path to the default SDK, or `null` if the test has not explicitly
61 * invoked [createDefaultSdk].
62 */
63 String defaultSdkPath = null;
64
65 void createDefaultSdk(io.Directory tempDir) {
66 defaultSdkPath = pathContext.join(tempDir.path, 'default', 'sdk');
67 String librariesFilePath = pathContext.join(defaultSdkPath, 'lib',
68 '_internal', 'sdk_library_metadata', 'lib', 'libraries.dart');
69 createFile(
70 librariesFilePath,
71 r'''
72 const Map<String, LibraryInfo> libraries = const {
73 "async": const LibraryInfo("async/async.dart"),
74 "core": const LibraryInfo("core/core.dart"),
75 };
76 ''');
77 sdkManager =
78 new DartSdkManager(defaultSdkPath, false, (_) => new MockSdk());
79 builder = new ContextBuilder(resourceProvider, sdkManager, contentCache);
80 }
81
82 void createDirectory(String path) {
83 new io.Directory(path).createSync(recursive: true);
84 }
85
86 void createFile(String path, String content) {
87 new io.File(path)
88 ..createSync(recursive: true)
89 ..writeAsStringSync(content);
90 }
91
54 @override 92 @override
55 void setUp() { 93 void setUp() {
56 resourceProvider = PhysicalResourceProvider.INSTANCE; 94 resourceProvider = PhysicalResourceProvider.INSTANCE;
57 pathContext = resourceProvider.pathContext; 95 pathContext = resourceProvider.pathContext;
58 sdkManager = new DartSdkManager('', false, (_) => new MockSdk()); 96 sdkManager = new DartSdkManager('', false, (_) => new MockSdk());
59 contentCache = new ContentCache(); 97 contentCache = new ContentCache();
98 builder = new ContextBuilder(resourceProvider, sdkManager, contentCache);
60 } 99 }
61 100
62 void test_createPackageMap_fromPackageDirectory_explicit() { 101 void test_createPackageMap_fromPackageDirectory_explicit() {
63 withTempDir((io.Directory tempDir) { 102 withTempDir((io.Directory tempDir) {
64 // Use a package directory that is outside the project directory. 103 // Use a package directory that is outside the project directory.
65 String rootPath = tempDir.path; 104 String rootPath = tempDir.path;
66 String projectPath = pathContext.join(rootPath, 'project'); 105 String projectPath = pathContext.join(rootPath, 'project');
67 String packageDirPath = pathContext.join(rootPath, 'packages'); 106 String packageDirPath = pathContext.join(rootPath, 'packages');
68 String fooName = 'foo'; 107 String fooName = 'foo';
69 String fooPath = pathContext.join(packageDirPath, fooName); 108 String fooPath = pathContext.join(packageDirPath, fooName);
70 String barName = 'bar'; 109 String barName = 'bar';
71 String barPath = pathContext.join(packageDirPath, barName); 110 String barPath = pathContext.join(packageDirPath, barName);
72 new io.Directory(projectPath).createSync(recursive: true); 111 createDirectory(projectPath);
73 new io.Directory(fooPath).createSync(recursive: true); 112 createDirectory(fooPath);
74 new io.Directory(barPath).createSync(recursive: true); 113 createDirectory(barPath);
75 114
76 ContextBuilder builder =
77 new ContextBuilder(resourceProvider, sdkManager, contentCache);
78 builder.defaultPackagesDirectoryPath = packageDirPath; 115 builder.defaultPackagesDirectoryPath = packageDirPath;
79 116
80 Packages packages = builder.createPackageMap(projectPath); 117 Packages packages = builder.createPackageMap(projectPath);
81 expect(packages, isNotNull); 118 expect(packages, isNotNull);
82 Map<String, Uri> map = packages.asMap(); 119 Map<String, Uri> map = packages.asMap();
83 expect(map, hasLength(2)); 120 expect(map, hasLength(2));
84 expect(map[fooName], new Uri.directory(fooPath)); 121 expect(map[fooName], new Uri.directory(fooPath));
85 expect(map[barName], new Uri.directory(barPath)); 122 expect(map[barName], new Uri.directory(barPath));
86 }); 123 });
87 } 124 }
88 125
89 void test_createPackageMap_fromPackageDirectory_inRoot() { 126 void test_createPackageMap_fromPackageDirectory_inRoot() {
90 withTempDir((io.Directory tempDir) { 127 withTempDir((io.Directory tempDir) {
91 // Use a package directory that is inside the project directory. 128 // Use a package directory that is inside the project directory.
92 String projectPath = tempDir.path; 129 String projectPath = tempDir.path;
93 String packageDirPath = pathContext.join(projectPath, 'packages'); 130 String packageDirPath = pathContext.join(projectPath, 'packages');
94 String fooName = 'foo'; 131 String fooName = 'foo';
95 String fooPath = pathContext.join(packageDirPath, fooName); 132 String fooPath = pathContext.join(packageDirPath, fooName);
96 String barName = 'bar'; 133 String barName = 'bar';
97 String barPath = pathContext.join(packageDirPath, barName); 134 String barPath = pathContext.join(packageDirPath, barName);
98 new io.Directory(fooPath).createSync(recursive: true); 135 createDirectory(fooPath);
99 new io.Directory(barPath).createSync(recursive: true); 136 createDirectory(barPath);
100 137
101 ContextBuilder builder =
102 new ContextBuilder(resourceProvider, sdkManager, contentCache);
103 Packages packages = builder.createPackageMap(projectPath); 138 Packages packages = builder.createPackageMap(projectPath);
104 expect(packages, isNotNull); 139 expect(packages, isNotNull);
105 Map<String, Uri> map = packages.asMap(); 140 Map<String, Uri> map = packages.asMap();
106 expect(map, hasLength(2)); 141 expect(map, hasLength(2));
107 expect(map[fooName], new Uri.directory(fooPath)); 142 expect(map[fooName], new Uri.directory(fooPath));
108 expect(map[barName], new Uri.directory(barPath)); 143 expect(map[barName], new Uri.directory(barPath));
109 }); 144 });
110 } 145 }
111 146
112 void test_createPackageMap_fromPackageFile_explicit() { 147 void test_createPackageMap_fromPackageFile_explicit() {
113 withTempDir((io.Directory tempDir) { 148 withTempDir((io.Directory tempDir) {
114 // Use a package file that is outside the project directory's hierarchy. 149 // Use a package file that is outside the project directory's hierarchy.
115 String rootPath = tempDir.path; 150 String rootPath = tempDir.path;
116 String projectPath = pathContext.join(rootPath, 'project'); 151 String projectPath = pathContext.join(rootPath, 'project');
117 String packageFilePath = pathContext.join(rootPath, 'child', '.packages'); 152 String packageFilePath = pathContext.join(rootPath, 'child', '.packages');
118 new io.Directory(projectPath).createSync(recursive: true); 153 createDirectory(projectPath);
119 new io.File(packageFilePath) 154 createFile(
120 ..createSync(recursive: true) 155 packageFilePath,
121 ..writeAsStringSync(r''' 156 r'''
122 foo:/pkg/foo 157 foo:/pkg/foo
123 bar:/pkg/bar 158 bar:/pkg/bar
124 '''); 159 ''');
125 160
126 ContextBuilder builder =
127 new ContextBuilder(resourceProvider, sdkManager, contentCache);
128 builder.defaultPackageFilePath = packageFilePath; 161 builder.defaultPackageFilePath = packageFilePath;
129 Packages packages = builder.createPackageMap(projectPath); 162 Packages packages = builder.createPackageMap(projectPath);
130 expect(packages, isNotNull); 163 expect(packages, isNotNull);
131 Map<String, Uri> map = packages.asMap(); 164 Map<String, Uri> map = packages.asMap();
132 expect(map, hasLength(2)); 165 expect(map, hasLength(2));
133 expect(map['foo'], new Uri.directory('/pkg/foo')); 166 expect(map['foo'], new Uri.directory('/pkg/foo'));
134 expect(map['bar'], new Uri.directory('/pkg/bar')); 167 expect(map['bar'], new Uri.directory('/pkg/bar'));
135 }); 168 });
136 } 169 }
137 170
138 void test_createPackageMap_fromPackageFile_inParentOfRoot() { 171 void test_createPackageMap_fromPackageFile_inParentOfRoot() {
139 withTempDir((io.Directory tempDir) { 172 withTempDir((io.Directory tempDir) {
140 // Use a package file that is inside the parent of the project directory. 173 // Use a package file that is inside the parent of the project directory.
141 String rootPath = tempDir.path; 174 String rootPath = tempDir.path;
142 String projectPath = pathContext.join(rootPath, 'project'); 175 String projectPath = pathContext.join(rootPath, 'project');
143 String packageFilePath = pathContext.join(rootPath, '.packages'); 176 String packageFilePath = pathContext.join(rootPath, '.packages');
144 new io.Directory(projectPath).createSync(recursive: true); 177 createDirectory(projectPath);
145 new io.File(packageFilePath) 178 createFile(
146 ..createSync(recursive: true) 179 packageFilePath,
147 ..writeAsStringSync(r''' 180 r'''
148 foo:/pkg/foo 181 foo:/pkg/foo
149 bar:/pkg/bar 182 bar:/pkg/bar
150 '''); 183 ''');
151 184
152 ContextBuilder builder =
153 new ContextBuilder(resourceProvider, sdkManager, contentCache);
154 Packages packages = builder.createPackageMap(projectPath); 185 Packages packages = builder.createPackageMap(projectPath);
155 expect(packages, isNotNull); 186 expect(packages, isNotNull);
156 Map<String, Uri> map = packages.asMap(); 187 Map<String, Uri> map = packages.asMap();
157 expect(map, hasLength(2)); 188 expect(map, hasLength(2));
158 expect(map['foo'], new Uri.directory('/pkg/foo')); 189 expect(map['foo'], new Uri.directory('/pkg/foo'));
159 expect(map['bar'], new Uri.directory('/pkg/bar')); 190 expect(map['bar'], new Uri.directory('/pkg/bar'));
160 }); 191 });
161 } 192 }
162 193
163 void test_createPackageMap_fromPackageFile_inRoot() { 194 void test_createPackageMap_fromPackageFile_inRoot() {
164 withTempDir((io.Directory tempDir) { 195 withTempDir((io.Directory tempDir) {
165 // Use a package file that is inside the project directory. 196 // Use a package file that is inside the project directory.
166 String rootPath = tempDir.path; 197 String rootPath = tempDir.path;
167 String projectPath = pathContext.join(rootPath, 'project'); 198 String projectPath = pathContext.join(rootPath, 'project');
168 String packageFilePath = pathContext.join(projectPath, '.packages'); 199 String packageFilePath = pathContext.join(projectPath, '.packages');
169 new io.Directory(projectPath).createSync(recursive: true); 200 createDirectory(projectPath);
170 new io.File(packageFilePath) 201 createFile(
171 ..createSync(recursive: true) 202 packageFilePath,
172 ..writeAsStringSync(r''' 203 r'''
173 foo:/pkg/foo 204 foo:/pkg/foo
174 bar:/pkg/bar 205 bar:/pkg/bar
175 '''); 206 ''');
176 207
177 ContextBuilder builder =
178 new ContextBuilder(resourceProvider, sdkManager, contentCache);
179 Packages packages = builder.createPackageMap(projectPath); 208 Packages packages = builder.createPackageMap(projectPath);
180 expect(packages, isNotNull); 209 expect(packages, isNotNull);
181 Map<String, Uri> map = packages.asMap(); 210 Map<String, Uri> map = packages.asMap();
182 expect(map, hasLength(2)); 211 expect(map, hasLength(2));
183 expect(map['foo'], new Uri.directory('/pkg/foo')); 212 expect(map['foo'], new Uri.directory('/pkg/foo'));
184 expect(map['bar'], new Uri.directory('/pkg/bar')); 213 expect(map['bar'], new Uri.directory('/pkg/bar'));
185 }); 214 });
186 } 215 }
187 216
188 void test_createPackageMap_none() { 217 void test_createPackageMap_none() {
189 withTempDir((io.Directory tempDir) { 218 withTempDir((io.Directory tempDir) {
190 ContextBuilder builder =
191 new ContextBuilder(resourceProvider, sdkManager, contentCache);
192 Packages packages = builder.createPackageMap(tempDir.path); 219 Packages packages = builder.createPackageMap(tempDir.path);
193 expect(packages, same(Packages.noPackages)); 220 expect(packages, same(Packages.noPackages));
194 }); 221 });
195 } 222 }
196 223
224 void test_createSourceFactory_noProvider_packages_embedder_extensions() {
225 withTempDir((io.Directory tempDir) {
226 createDefaultSdk(tempDir);
227 String rootPath = tempDir.path;
228 String projectPath = pathContext.join(rootPath, 'project');
229 String packageFilePath = pathContext.join(projectPath, '.packages');
230 String packageA = pathContext.join(rootPath, 'pkgs', 'a');
231 String embedderPath = pathContext.join(packageA, '_embedder.yaml');
232 String packageB = pathContext.join(rootPath, 'pkgs', 'b');
233 String extensionPath = pathContext.join(packageB, '_sdkext');
234 createFile(
235 packageFilePath,
236 '''
237 a:$packageA
238 b:$packageB
239 ''');
240 String asyncPath = pathContext.join(packageA, 'sdk', 'async.dart');
241 String corePath = pathContext.join(packageA, 'sdk', 'core.dart');
242 createFile(
243 embedderPath,
244 '''
245 embedded_libs:
246 "dart:async": ${pathContext.relative(asyncPath, from: packageA)}
247 "dart:core": ${pathContext.relative(corePath, from: packageA)}
248 ''');
249 String fooPath = pathContext.join(packageB, 'ext', 'foo.dart');
250 createFile(
251 extensionPath,
252 '''{
253 "dart:foo": "${pathContext.relative(fooPath, from: packageB)}"
254 }''');
255 AnalysisOptionsImpl options = new AnalysisOptionsImpl();
256
257 SourceFactory factory = builder.createSourceFactory(projectPath, options);
258
259 Source asyncSource = factory.forUri('dart:async');
260 expect(asyncSource, isNotNull);
261 expect(asyncSource.fullName, asyncPath);
262
263 Source fooSource = factory.forUri('dart:foo');
264 expect(fooSource, isNotNull);
265 expect(fooSource.fullName, fooPath);
266
267 Source packageSource = factory.forUri('package:b/b.dart');
268 expect(packageSource, isNotNull);
269 expect(packageSource.fullName, '$packageB/b.dart');
270 });
271 }
272
273 void test_createSourceFactory_noProvider_packages_embedder_noExtensions() {
274 withTempDir((io.Directory tempDir) {
275 createDefaultSdk(tempDir);
276 String rootPath = tempDir.path;
277 String projectPath = pathContext.join(rootPath, 'project');
278 String packageFilePath = pathContext.join(projectPath, '.packages');
279 String packageA = pathContext.join(rootPath, 'pkgs', 'a');
280 String embedderPath = pathContext.join(packageA, '_embedder.yaml');
281 String packageB = pathContext.join(rootPath, 'pkgs', 'b');
282 createFile(
283 packageFilePath,
284 '''
285 a:$packageA
286 b:$packageB
287 ''');
288 String asyncPath = pathContext.join(packageA, 'sdk', 'async.dart');
289 String corePath = pathContext.join(packageA, 'sdk', 'core.dart');
290 createFile(
291 embedderPath,
292 '''
293 embedded_libs:
294 "dart:async": ${pathContext.relative(asyncPath, from: packageA)}
295 "dart:core": ${pathContext.relative(corePath, from: packageA)}
296 ''');
297 AnalysisOptionsImpl options = new AnalysisOptionsImpl();
298
299 SourceFactory factory = builder.createSourceFactory(projectPath, options);
300
301 Source dartSource = factory.forUri('dart:async');
302 expect(dartSource, isNotNull);
303 expect(dartSource.fullName, asyncPath);
304
305 Source packageSource = factory.forUri('package:b/b.dart');
306 expect(packageSource, isNotNull);
307 expect(packageSource.fullName, '$packageB/b.dart');
308 });
309 }
310
311 @failingTest
312 void test_createSourceFactory_noProvider_packages_noEmbedder_extensions() {
313 fail('Incomplete test');
314 }
315
316 void test_createSourceFactory_noProvider_packages_noEmbedder_noExtensions() {
317 withTempDir((io.Directory tempDir) {
318 createDefaultSdk(tempDir);
319 String rootPath = tempDir.path;
320 String projectPath = pathContext.join(rootPath, 'project');
321 String packageFilePath = pathContext.join(projectPath, '.packages');
322 createFile(
323 packageFilePath,
324 r'''
325 a:file:///pkgs/a
326 b:file:///pkgs/b
327 ''');
328 AnalysisOptionsImpl options = new AnalysisOptionsImpl();
329
330 SourceFactory factory = builder.createSourceFactory(projectPath, options);
331
332 Source dartSource = factory.forUri('dart:core');
333 expect(dartSource, isNotNull);
334 expect(dartSource.fullName, '$defaultSdkPath/lib/core/core.dart');
335
336 Source packageSource = factory.forUri('package:a/a.dart');
337 expect(packageSource, isNotNull);
338 expect(packageSource.fullName, '/pkgs/a/a.dart');
339 });
340 }
341
342 @failingTest
343 void test_createSourceFactory_provider() {
344 fail('Incomplete test');
345 }
346
197 /** 347 /**
198 * Execute the [test] function with a temporary [directory]. The test function 348 * Execute the [test] function with a temporary [directory]. The test function
199 * can perform any disk operations within the directory and the directory (and 349 * can perform any disk operations within the directory and the directory (and
200 * its content) will be removed after the function returns. 350 * its content) will be removed after the function returns.
201 */ 351 */
202 void withTempDir(test(io.Directory directory)) { 352 void withTempDir(test(io.Directory directory)) {
203 io.Directory directory = 353 io.Directory directory =
204 io.Directory.systemTemp.createTempSync('analyzer_'); 354 io.Directory.systemTemp.createTempSync('analyzer_');
205 try { 355 try {
206 test(directory); 356 test(directory);
(...skipping 13 matching lines...) Expand all
220 /** 370 /**
221 * The SDK manager used by the tests; 371 * The SDK manager used by the tests;
222 */ 372 */
223 DartSdkManager sdkManager; 373 DartSdkManager sdkManager;
224 374
225 /** 375 /**
226 * The content cache used by the tests. 376 * The content cache used by the tests.
227 */ 377 */
228 ContentCache contentCache; 378 ContentCache contentCache;
229 379
230 void fail_createSourceFactory() { 380 /**
231 fail('Incomplete test'); 381 * The context builder to be used in the test.
232 } 382 */
233 383 ContextBuilder builder;
234 void fail_findSdkResolver() {
235 fail('Incomplete test');
236 }
237 384
238 @override 385 @override
239 void setUp() { 386 void setUp() {
240 resourceProvider = new MemoryResourceProvider(); 387 resourceProvider = new MemoryResourceProvider();
241 sdkManager = new DartSdkManager('', false, (_) => new MockSdk()); 388 sdkManager = new DartSdkManager('', false, (_) => new MockSdk());
242 contentCache = new ContentCache(); 389 contentCache = new ContentCache();
390 builder = new ContextBuilder(resourceProvider, sdkManager, contentCache);
243 } 391 }
244 392
245 void test_convertPackagesToMap_noPackages() { 393 void test_convertPackagesToMap_noPackages() {
246 ContextBuilder builder =
247 new ContextBuilder(resourceProvider, sdkManager, contentCache);
248 expect(builder.convertPackagesToMap(Packages.noPackages), isNull); 394 expect(builder.convertPackagesToMap(Packages.noPackages), isNull);
249 } 395 }
250 396
251 void test_convertPackagesToMap_null() { 397 void test_convertPackagesToMap_null() {
252 ContextBuilder builder =
253 new ContextBuilder(resourceProvider, sdkManager, contentCache);
254 expect(builder.convertPackagesToMap(null), isNull); 398 expect(builder.convertPackagesToMap(null), isNull);
255 } 399 }
256 400
257 void test_convertPackagesToMap_packages() { 401 void test_convertPackagesToMap_packages() {
258 String fooName = 'foo'; 402 String fooName = 'foo';
259 String fooPath = '/pkg/foo'; 403 String fooPath = '/pkg/foo';
260 Uri fooUri = new Uri.directory(fooPath); 404 Uri fooUri = new Uri.directory(fooPath);
261 String barName = 'bar'; 405 String barName = 'bar';
262 String barPath = '/pkg/bar'; 406 String barPath = '/pkg/bar';
263 Uri barUri = new Uri.directory(barPath); 407 Uri barUri = new Uri.directory(barPath);
264 408
265 ContextBuilder builder =
266 new ContextBuilder(resourceProvider, sdkManager, contentCache);
267 MapPackages packages = new MapPackages({fooName: fooUri, barName: barUri}); 409 MapPackages packages = new MapPackages({fooName: fooUri, barName: barUri});
268 Map<String, List<Folder>> result = builder.convertPackagesToMap(packages); 410 Map<String, List<Folder>> result = builder.convertPackagesToMap(packages);
269 expect(result, isNotNull); 411 expect(result, isNotNull);
270 expect(result, hasLength(2)); 412 expect(result, hasLength(2));
271 expect(result[fooName], hasLength(1)); 413 expect(result[fooName], hasLength(1));
272 expect(result[fooName][0].path, fooPath); 414 expect(result[fooName][0].path, fooPath);
273 expect(result[barName], hasLength(1)); 415 expect(result[barName], hasLength(1));
274 expect(result[barName][0].path, barPath); 416 expect(result[barName][0].path, barPath);
275 } 417 }
276 418
419 @failingTest
420 void test_findSdkResolver() {
421 fail('Incomplete test');
422 }
423
277 void test_getOptionsFile_explicit() { 424 void test_getOptionsFile_explicit() {
278 String path = '/some/directory/path'; 425 String path = '/some/directory/path';
279 String filePath = '/options/analysis.yaml'; 426 String filePath = '/options/analysis.yaml';
280 resourceProvider.newFile(filePath, ''); 427 resourceProvider.newFile(filePath, '');
281 428
282 ContextBuilder builder =
283 new ContextBuilder(resourceProvider, sdkManager, contentCache);
284 builder.defaultAnalysisOptionsFilePath = filePath; 429 builder.defaultAnalysisOptionsFilePath = filePath;
285 File result = builder.getOptionsFile(path); 430 File result = builder.getOptionsFile(path);
286 expect(result, isNotNull); 431 expect(result, isNotNull);
287 expect(result.path, filePath); 432 expect(result.path, filePath);
288 } 433 }
289 434
290 void test_getOptionsFile_inParentOfRoot_new() { 435 void test_getOptionsFile_inParentOfRoot_new() {
291 String parentPath = '/some/directory'; 436 String parentPath = '/some/directory';
292 String path = '$parentPath/path'; 437 String path = '$parentPath/path';
293 String filePath = 438 String filePath =
294 '$parentPath/${AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE}'; 439 '$parentPath/${AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE}';
295 resourceProvider.newFile(filePath, ''); 440 resourceProvider.newFile(filePath, '');
296 441
297 ContextBuilder builder =
298 new ContextBuilder(resourceProvider, sdkManager, contentCache);
299 File result = builder.getOptionsFile(path); 442 File result = builder.getOptionsFile(path);
300 expect(result, isNotNull); 443 expect(result, isNotNull);
301 expect(result.path, filePath); 444 expect(result.path, filePath);
302 } 445 }
303 446
304 void test_getOptionsFile_inParentOfRoot_old() { 447 void test_getOptionsFile_inParentOfRoot_old() {
305 String parentPath = '/some/directory'; 448 String parentPath = '/some/directory';
306 String path = '$parentPath/path'; 449 String path = '$parentPath/path';
307 String filePath = '$parentPath/${AnalysisEngine.ANALYSIS_OPTIONS_FILE}'; 450 String filePath = '$parentPath/${AnalysisEngine.ANALYSIS_OPTIONS_FILE}';
308 resourceProvider.newFile(filePath, ''); 451 resourceProvider.newFile(filePath, '');
309 452
310 ContextBuilder builder =
311 new ContextBuilder(resourceProvider, sdkManager, contentCache);
312 File result = builder.getOptionsFile(path); 453 File result = builder.getOptionsFile(path);
313 expect(result, isNotNull); 454 expect(result, isNotNull);
314 expect(result.path, filePath); 455 expect(result.path, filePath);
315 } 456 }
316 457
317 void test_getOptionsFile_inRoot_new() { 458 void test_getOptionsFile_inRoot_new() {
318 String path = '/some/directory/path'; 459 String path = '/some/directory/path';
319 String filePath = '$path/${AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE}'; 460 String filePath = '$path/${AnalysisEngine.ANALYSIS_OPTIONS_YAML_FILE}';
320 resourceProvider.newFile(filePath, ''); 461 resourceProvider.newFile(filePath, '');
321 462
322 ContextBuilder builder =
323 new ContextBuilder(resourceProvider, sdkManager, contentCache);
324 File result = builder.getOptionsFile(path); 463 File result = builder.getOptionsFile(path);
325 expect(result, isNotNull); 464 expect(result, isNotNull);
326 expect(result.path, filePath); 465 expect(result.path, filePath);
327 } 466 }
328 467
329 void test_getOptionsFile_inRoot_old() { 468 void test_getOptionsFile_inRoot_old() {
330 String path = '/some/directory/path'; 469 String path = '/some/directory/path';
331 String filePath = '$path/${AnalysisEngine.ANALYSIS_OPTIONS_FILE}'; 470 String filePath = '$path/${AnalysisEngine.ANALYSIS_OPTIONS_FILE}';
332 resourceProvider.newFile(filePath, ''); 471 resourceProvider.newFile(filePath, '');
333 472
334 ContextBuilder builder =
335 new ContextBuilder(resourceProvider, sdkManager, contentCache);
336 File result = builder.getOptionsFile(path); 473 File result = builder.getOptionsFile(path);
337 expect(result, isNotNull); 474 expect(result, isNotNull);
338 expect(result.path, filePath); 475 expect(result.path, filePath);
339 } 476 }
340 } 477 }
OLDNEW
« no previous file with comments | « pkg/analyzer/lib/src/generated/sdk_io.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698