| OLD | NEW |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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.context.directory.manager; | 5 library test.context.directory.manager; |
| 6 | 6 |
| 7 import 'package:analysis_server/src/context_manager.dart'; | 7 import 'package:analysis_server/src/context_manager.dart'; |
| 8 import 'package:analyzer/file_system/file_system.dart'; | 8 import 'package:analyzer/file_system/file_system.dart'; |
| 9 import 'package:analyzer/file_system/memory_file_system.dart'; | 9 import 'package:analyzer/file_system/memory_file_system.dart'; |
| 10 import 'package:analyzer/source/package_map_provider.dart'; | 10 import 'package:analyzer/source/package_map_provider.dart'; |
| (...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 186 resourceProvider.newFile('$subProjectA/pubspec.yaml', 'pubspec'); | 186 resourceProvider.newFile('$subProjectA/pubspec.yaml', 'pubspec'); |
| 187 resourceProvider.newFile('$subProjectB/pubspec.yaml', 'pubspec'); | 187 resourceProvider.newFile('$subProjectB/pubspec.yaml', 'pubspec'); |
| 188 resourceProvider.newFile(rootFile, 'library root;'); | 188 resourceProvider.newFile(rootFile, 'library root;'); |
| 189 resourceProvider.newFile(subProjectA_file, 'library a;'); | 189 resourceProvider.newFile(subProjectA_file, 'library a;'); |
| 190 resourceProvider.newFile(subProjectB_file, 'library b;'); | 190 resourceProvider.newFile(subProjectB_file, 'library b;'); |
| 191 // configure package maps | 191 // configure package maps |
| 192 packageMapProvider.packageMaps = { | 192 packageMapProvider.packageMaps = { |
| 193 subProjectA: { | 193 subProjectA: { |
| 194 'foo': [resourceProvider.newFolder('/package/foo')] | 194 'foo': [resourceProvider.newFolder('/package/foo')] |
| 195 }, | 195 }, |
| 196 subProjectA: { | 196 subProjectB: { |
| 197 'bar': [resourceProvider.newFolder('/package/bar')] | 197 'bar': [resourceProvider.newFolder('/package/bar')] |
| 198 }, | 198 }, |
| 199 }; | 199 }; |
| 200 // set roots | 200 // set roots |
| 201 manager.setRoots(<String>[root], <String>[], <String, String>{}); | 201 manager.setRoots(<String>[root], <String>[], <String, String>{}); |
| 202 manager.assertContextPaths([root, subProjectA, subProjectB]); | 202 manager.assertContextPaths([root, subProjectA, subProjectB]); |
| 203 // verify files | 203 // verify files |
| 204 manager.assertContextFiles(root, [rootFile]); | 204 manager.assertContextFiles(root, [rootFile]); |
| 205 manager.assertContextFiles(subProjectA, [subProjectA_file]); | 205 manager.assertContextFiles(subProjectA, [subProjectA_file]); |
| 206 manager.assertContextFiles(subProjectB, [subProjectB_file]); | 206 manager.assertContextFiles(subProjectB, [subProjectB_file]); |
| 207 // verify package maps | 207 // verify package maps |
| 208 _checkPackageMap(root, equals(packageMapProvider.packageMaps[root])); | 208 _checkPackageMap(root, isNull); |
| 209 _checkPackageMap( | 209 _checkPackageMap( |
| 210 subProjectA, | 210 subProjectA, |
| 211 equals(packageMapProvider.packageMaps[subProjectA])); | 211 equals(packageMapProvider.packageMaps[subProjectA])); |
| 212 _checkPackageMap( | 212 _checkPackageMap( |
| 213 subProjectB, | 213 subProjectB, |
| 214 equals(packageMapProvider.packageMaps[subProjectB])); | 214 equals(packageMapProvider.packageMaps[subProjectB])); |
| 215 } | 215 } |
| 216 | 216 |
| 217 void test_setRoots_addPackageRoot() { | 217 void test_setRoots_addPackageRoot() { |
| 218 String packagePathFoo = '/package1/foo'; | 218 String packagePathFoo = '/package1/foo'; |
| (...skipping 530 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 749 _checkPackageMap(projPath, isNull); | 749 _checkPackageMap(projPath, isNull); |
| 750 }); | 750 }); |
| 751 } | 751 } |
| 752 | 752 |
| 753 /** | 753 /** |
| 754 * Verify that package URI's for source files in [path] will be resolved | 754 * Verify that package URI's for source files in [path] will be resolved |
| 755 * using a package map matching [expectation]. | 755 * using a package map matching [expectation]. |
| 756 */ | 756 */ |
| 757 void _checkPackageMap(String path, expectation) { | 757 void _checkPackageMap(String path, expectation) { |
| 758 UriResolver resolver = manager.currentContextPackageUriResolvers[path]; | 758 UriResolver resolver = manager.currentContextPackageUriResolvers[path]; |
| 759 expect(resolver, new isInstanceOf<PackageMapUriResolver>()); | 759 Map<String, List<Folder>> packageMap = |
| 760 PackageMapUriResolver packageMapUriResolver = resolver; | 760 resolver is PackageMapUriResolver ? resolver.packageMap : null; |
| 761 expect(packageMapUriResolver.packageMap, expectation); | 761 expect(packageMap, expectation); |
| 762 } | 762 } |
| 763 | 763 |
| 764 /** | 764 /** |
| 765 * Verify that package URI's for source files in [path] will be resolved | 765 * Verify that package URI's for source files in [path] will be resolved |
| 766 * using a package root maching [expectation]. | 766 * using a package root maching [expectation]. |
| 767 */ | 767 */ |
| 768 void _checkPackageRoot(String path, expectation) { | 768 void _checkPackageRoot(String path, expectation) { |
| 769 UriResolver resolver = manager.currentContextPackageUriResolvers[path]; | 769 UriResolver resolver = manager.currentContextPackageUriResolvers[path]; |
| 770 expect(resolver, new isInstanceOf<PackageUriResolver>()); | 770 expect(resolver, new isInstanceOf<PackageUriResolver>()); |
| 771 PackageUriResolver packageUriResolver = resolver; | 771 PackageUriResolver packageUriResolver = resolver; |
| (...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 849 currentContextFilePaths.remove(path); | 849 currentContextFilePaths.remove(path); |
| 850 currentContextPackageUriResolvers.remove(path); | 850 currentContextPackageUriResolvers.remove(path); |
| 851 } | 851 } |
| 852 | 852 |
| 853 @override | 853 @override |
| 854 void updateContextPackageUriResolver(Folder contextFolder, | 854 void updateContextPackageUriResolver(Folder contextFolder, |
| 855 UriResolver packageUriResolver) { | 855 UriResolver packageUriResolver) { |
| 856 currentContextPackageUriResolvers[contextFolder.path] = packageUriResolver; | 856 currentContextPackageUriResolvers[contextFolder.path] = packageUriResolver; |
| 857 } | 857 } |
| 858 } | 858 } |
| OLD | NEW |