diff --git a/pkg/analyzer/test/src/context/packages_test.dart b/pkg/analyzer/test/src/context/packages_test.dart index 17cef597fee..aead22618c1 100644 --- a/pkg/analyzer/test/src/context/packages_test.dart +++ b/pkg/analyzer/test/src/context/packages_test.dart @@ -20,32 +20,6 @@ class PackagesTest with ResourceProviderMixin { newFile('/test/lib/test.dart', content: ''); } - void test_findPackagesFrom_fallbackToDotPackages() { - newDotPackagesFile('/test', content: ''' -test:lib/ -bbb:${toUriStr('/packages/bbb/lib')} -'''); - - var packages = findPackagesFrom( - resourceProvider, - getFile('/test/lib/a.dart'), - ); - - _assertPackage( - packages, - name: 'test', - expectedLibPath: '/test/lib', - expectedVersion: null, - ); - - _assertPackage( - packages, - name: 'bbb', - expectedLibPath: '/packages/bbb/lib', - expectedVersion: null, - ); - } - void test_findPackagesFrom_missing() { var packages = findPackagesFrom( resourceProvider, @@ -55,52 +29,6 @@ bbb:${toUriStr('/packages/bbb/lib')} expect(packages.packages, isEmpty); } - void test_findPackagesFrom_preferPackageConfig() { - newFile('/test/.dart_tool/package_config.json', content: ''' -{ - "configVersion": 2, - "packages": [ - { - "name": "test", - "rootUri": "../", - "packageUri": "lib/", - "languageVersion": "2.6" - }, - { - "name": "aaa", - "rootUri": "${toUriStr('/packages/aaa')}", - "packageUri": "lib/", - "languageVersion": "2.3" - } - ] -} -'''); - - newDotPackagesFile('/test', content: ''' -test:lib/ -bbb:${toUriStr('/packages/bbb/lib')} -'''); - - var packages = findPackagesFrom( - resourceProvider, - getFile('/test/lib/a.dart'), - ); - - _assertPackage( - packages, - name: 'test', - expectedLibPath: '/test/lib', - expectedVersion: Version(2, 6, 0), - ); - - _assertPackage( - packages, - name: 'aaa', - expectedLibPath: '/packages/aaa/lib', - expectedVersion: Version(2, 3, 0), - ); - } - test_packageForPath() { var packages = Packages( { @@ -137,29 +65,6 @@ bbb:${toUriStr('/packages/bbb/lib')} check('/home/ddd/lib/d.dart', null); } - test_parseDotPackagesFile() { - var file = newDotPackagesFile('/test', content: ''' -# Generated by pub -aaa:${toUriStr('/packages/aaa/lib/')} -test:lib/ -'''); - var packages = parseDotPackagesFile(resourceProvider, file); - - _assertPackage( - packages, - name: 'test', - expectedLibPath: '/test/lib', - expectedVersion: null, - ); - - _assertPackage( - packages, - name: 'aaa', - expectedLibPath: '/packages/aaa/lib', - expectedVersion: null, - ); - } - test_parsePackageConfigJsonFile() { var file = newFile('/test/.dart_tool/package_config.json', content: ''' { @@ -209,21 +114,6 @@ test:lib/ ); } - test_parsePackagesFile_dotPackages() { - var dotPackagesFile = newDotPackagesFile('/test', content: ''' -bbb:${toUriStr('/packages/bbb/lib')} -'''); - - var packages = parsePackagesFile(resourceProvider, dotPackagesFile); - - _assertPackage( - packages, - name: 'bbb', - expectedLibPath: '/packages/bbb/lib', - expectedVersion: null, - ); - } - test_parsePackagesFile_packageConfig() { var path = convertPath('/test/.dart_tool/package_config.json'); newFile(path, content: ''' @@ -250,38 +140,6 @@ bbb:${toUriStr('/packages/bbb/lib')} ); } - test_parsePackagesFile_packageConfig_fromDotPackages() { - newFile('/test/.dart_tool/package_config.json', content: ''' -{ - "configVersion": 2, - "packages": [ - { - "name": "aaa", - "rootUri": "${toUriStr('/packages/aaa')}", - "packageUri": "lib/", - "languageVersion": "2.3" - } - ] -} -'''); - - var dotPackagesFile = newDotPackagesFile('/test', content: ''' -bbb:${toUriStr('/packages/bbb/lib')} -'''); - - var packages = parsePackagesFile( - resourceProvider, - dotPackagesFile, - ); - - _assertPackage( - packages, - name: 'aaa', - expectedLibPath: '/packages/aaa/lib', - expectedVersion: Version(2, 3, 0), - ); - } - void _assertPackage( Packages packages, { required String name, diff --git a/pkg/analyzer/test/src/dart/analysis/context_locator_test.dart b/pkg/analyzer/test/src/dart/analysis/context_locator_test.dart index 70224646f4a..cddb12c3c1c 100644 --- a/pkg/analyzer/test/src/dart/analysis/context_locator_test.dart +++ b/pkg/analyzer/test/src/dart/analysis/context_locator_test.dart @@ -235,7 +235,7 @@ analyzer: void test_locateRoots_multiple_dirAndNestedDir_innerConfigurationFiles() { var outerRootFolder = newFolder('/outer'); var innerOptionsFile = newAnalysisOptionsYamlFile('/outer/examples/inner'); - var innerPackagesFile = newDotPackagesFile('/outer/examples/inner'); + var innerPackagesFile = newPackageConfigJsonFile('/outer/examples/inner'); var innerRootFolder = newFolder('/outer/examples/inner'); var roots = contextLocator.locateRoots( @@ -274,7 +274,7 @@ analyzer: void test_locateRoots_multiple_dirAndNestedDir_outerConfigurationFiles() { Folder outerRootFolder = newFolder('/test/outer'); File outerOptionsFile = newAnalysisOptionsYamlFile('/test/outer'); - File outerPackagesFile = newDotPackagesFile('/test/outer'); + File outerPackagesFile = newPackageConfigJsonFile('/test/outer'); Folder innerRootFolder = newFolder('/test/outer/examples/inner'); List roots = contextLocator.locateRoots( @@ -336,7 +336,7 @@ analyzer: void test_locateRoots_multiple_dirAndNestedFile_outerConfigurationFiles() { Folder outerRootFolder = newFolder('/test/outer'); File outerOptionsFile = newAnalysisOptionsYamlFile('/test/outer'); - File outerPackagesFile = newDotPackagesFile('/test/outer'); + File outerPackagesFile = newPackageConfigJsonFile('/test/outer'); File testFile = newFile('/test/outer/examples/inner/test.dart'); List roots = contextLocator @@ -353,11 +353,11 @@ analyzer: void test_locateRoots_multiple_dirAndSiblingDir_bothConfigurationFiles() { Folder outer1RootFolder = newFolder('/test/outer1'); File outer1OptionsFile = newAnalysisOptionsYamlFile('/test/outer1'); - File outer1PackagesFile = newDotPackagesFile('/test/outer1'); + File outer1PackagesFile = newPackageConfigJsonFile('/test/outer1'); Folder outer2RootFolder = newFolder('/test/outer2'); File outer2OptionsFile = newAnalysisOptionsYamlFile('/test/outer2'); - File outer2PackagesFile = newDotPackagesFile('/test/outer2'); + File outer2PackagesFile = newPackageConfigJsonFile('/test/outer2'); List roots = contextLocator.locateRoots( includedPaths: [outer1RootFolder.path, outer2RootFolder.path]); @@ -400,10 +400,10 @@ analyzer: void test_locateRoots_multiple_dirAndSiblingFile() { Folder outer1RootFolder = newFolder('/test/outer1'); File outer1OptionsFile = newAnalysisOptionsYamlFile('/test/outer1'); - File outer1PackagesFile = newDotPackagesFile('/test/outer1'); + File outer1PackagesFile = newPackageConfigJsonFile('/test/outer1'); File outer2OptionsFile = newAnalysisOptionsYamlFile('/test/outer2'); - File outer2PackagesFile = newDotPackagesFile('/test/outer2'); + File outer2PackagesFile = newPackageConfigJsonFile('/test/outer2'); File testFile = newFile('/test/outer2/test.dart'); List roots = contextLocator @@ -490,7 +490,7 @@ analyzer: exclude: - lib/test2.dart '''); - File packagesFile = newDotPackagesFile('/home/test'); + File packagesFile = newPackageConfigJsonFile('/home/test'); File testFile1 = newFile('/home/test/lib/test1.dart'); File testFile2 = newFile('/home/test/lib/test2.dart'); @@ -552,7 +552,7 @@ analyzer: void test_locateRoots_multiple_fileAndSiblingFile_hasOptionsPackages() { File optionsFile = newAnalysisOptionsYamlFile('/home/test'); - File packagesFile = newDotPackagesFile('/home/test'); + File packagesFile = newPackageConfigJsonFile('/home/test'); File testFile1 = newFile('/home/test/lib/test1.dart'); File testFile2 = newFile('/home/test/lib/test2.dart'); @@ -571,7 +571,7 @@ analyzer: } void test_locateRoots_multiple_fileAndSiblingFile_hasPackages() { - File packagesFile = newDotPackagesFile('/home/test'); + File packagesFile = newPackageConfigJsonFile('/home/test'); File testFile1 = newFile('/home/test/lib/test1.dart'); File testFile2 = newFile('/home/test/lib/test2.dart'); @@ -595,8 +595,8 @@ analyzer: /// just the file system root. void test_locateRoots_multiple_fileAndSiblingFile_hasPackages_overridePackages() { - newDotPackagesFile('/home/test'); // not used - File overridePackagesFile = newDotPackagesFile('/home'); + newPackageConfigJsonFile('/home/test'); // not used + File overridePackagesFile = newPackageConfigJsonFile('/home'); File testFile1 = newFile('/home/test/lib/test1.dart'); File testFile2 = newFile('/home/test/lib/test2.dart'); @@ -789,7 +789,7 @@ analyzer: void test_locateRoots_nested_excluded_dot() { Folder outerRootFolder = newFolder('/test/outer'); File outerOptionsFile = newAnalysisOptionsYamlFile('/test/outer'); - File outerPackagesFile = newDotPackagesFile('/test/outer'); + File outerPackagesFile = newPackageConfigJsonFile('/test/outer'); newFolder('/test/outer/.examples'); newAnalysisOptionsYamlFile('/test/outer/.examples/inner'); @@ -809,7 +809,7 @@ analyzer: void test_locateRoots_nested_excluded_explicit() { Folder outerRootFolder = newFolder('/test/outer'); File outerOptionsFile = newAnalysisOptionsYamlFile('/test/outer'); - File outerPackagesFile = newDotPackagesFile('/test/outer'); + File outerPackagesFile = newPackageConfigJsonFile('/test/outer'); Folder excludedFolder = newFolder('/test/outer/examples'); newAnalysisOptionsYamlFile('/test/outer/examples/inner'); @@ -828,12 +828,13 @@ analyzer: void test_locateRoots_nested_multiple() { Folder outerRootFolder = newFolder('/test/outer'); File outerOptionsFile = newAnalysisOptionsYamlFile('/test/outer'); - File outerPackagesFile = newDotPackagesFile('/test/outer'); + File outerPackagesFile = newPackageConfigJsonFile('/test/outer'); Folder inner1RootFolder = newFolder('/test/outer/examples/inner1'); File inner1OptionsFile = newAnalysisOptionsYamlFile('/test/outer/examples/inner1'); Folder inner2RootFolder = newFolder('/test/outer/examples/inner2'); - File inner2PackagesFile = newDotPackagesFile('/test/outer/examples/inner2'); + File inner2PackagesFile = + newPackageConfigJsonFile('/test/outer/examples/inner2'); List roots = contextLocator.locateRoots(includedPaths: [outerRootFolder.path]); @@ -862,7 +863,7 @@ analyzer: void test_locateRoots_nested_options() { Folder outerRootFolder = newFolder('/test/outer'); File outerOptionsFile = newAnalysisOptionsYamlFile('/test/outer'); - File outerPackagesFile = newDotPackagesFile('/test/outer'); + File outerPackagesFile = newPackageConfigJsonFile('/test/outer'); Folder innerRootFolder = newFolder('/test/outer/examples/inner'); File innerOptionsFile = newAnalysisOptionsYamlFile('/test/outer/examples/inner'); @@ -887,7 +888,7 @@ analyzer: void test_locateRoots_nested_options_overriddenOptions() { Folder outerRootFolder = newFolder('/test/outer'); newAnalysisOptionsYamlFile('/test/outer'); - File outerPackagesFile = newDotPackagesFile('/test/outer'); + File outerPackagesFile = newPackageConfigJsonFile('/test/outer'); newFolder('/test/outer/examples/inner'); newAnalysisOptionsYamlFile('/test/outer/examples/inner'); File overrideOptionsFile = newAnalysisOptionsYamlFile('/test/override'); @@ -907,11 +908,11 @@ analyzer: void test_locateRoots_nested_options_overriddenPackages() { Folder outerRootFolder = newFolder('/test/outer'); File outerOptionsFile = newAnalysisOptionsYamlFile('/test/outer'); - newDotPackagesFile('/test/outer'); + newPackageConfigJsonFile('/test/outer'); Folder innerRootFolder = newFolder('/test/outer/examples/inner'); File innerOptionsFile = newAnalysisOptionsYamlFile('/test/outer/examples/inner'); - File overridePackagesFile = newDotPackagesFile('/test/override'); + File overridePackagesFile = newPackageConfigJsonFile('/test/override'); List roots = contextLocator.locateRoots( includedPaths: [outerRootFolder.path], @@ -934,11 +935,12 @@ analyzer: void test_locateRoots_nested_optionsAndPackages() { Folder outerRootFolder = newFolder('/test/outer'); File outerOptionsFile = newAnalysisOptionsYamlFile('/test/outer'); - File outerPackagesFile = newDotPackagesFile('/test/outer'); + File outerPackagesFile = newPackageConfigJsonFile('/test/outer'); Folder innerRootFolder = newFolder('/test/outer/examples/inner'); File innerOptionsFile = newAnalysisOptionsYamlFile('/test/outer/examples/inner'); - File innerPackagesFile = newDotPackagesFile('/test/outer/examples/inner'); + File innerPackagesFile = + newPackageConfigJsonFile('/test/outer/examples/inner'); List roots = contextLocator.locateRoots(includedPaths: [outerRootFolder.path]); @@ -960,12 +962,12 @@ analyzer: void test_locateRoots_nested_optionsAndPackages_overriddenBoth() { Folder outerRootFolder = newFolder('/test/outer'); newAnalysisOptionsYamlFile('/test/outer'); - newDotPackagesFile('/test/outer'); + newPackageConfigJsonFile('/test/outer'); newFolder('/test/outer/examples/inner'); newAnalysisOptionsYamlFile('/test/outer/examples/inner'); - newDotPackagesFile('/test/outer/examples/inner'); + newPackageConfigJsonFile('/test/outer/examples/inner'); File overrideOptionsFile = newAnalysisOptionsYamlFile('/test/override'); - File overridePackagesFile = newDotPackagesFile('/test/override'); + File overridePackagesFile = newPackageConfigJsonFile('/test/override'); List roots = contextLocator.locateRoots( includedPaths: [outerRootFolder.path], @@ -1009,9 +1011,10 @@ analyzer: void test_locateRoots_nested_packages() { Folder outerRootFolder = newFolder('/test/outer'); File outerOptionsFile = newAnalysisOptionsYamlFile('/test/outer'); - File outerPackagesFile = newDotPackagesFile('/test/outer'); + File outerPackagesFile = newPackageConfigJsonFile('/test/outer'); Folder innerRootFolder = newFolder('/test/outer/examples/inner'); - File innerPackagesFile = newDotPackagesFile('/test/outer/examples/inner'); + File innerPackagesFile = + newPackageConfigJsonFile('/test/outer/examples/inner'); List roots = contextLocator.locateRoots(includedPaths: [outerRootFolder.path]); @@ -1033,9 +1036,10 @@ analyzer: void test_locateRoots_nested_packages_overriddenOptions() { Folder outerRootFolder = newFolder('/test/outer'); newAnalysisOptionsYamlFile('/test/outer'); - File outerPackagesFile = newDotPackagesFile('/test/outer'); + File outerPackagesFile = newPackageConfigJsonFile('/test/outer'); Folder innerRootFolder = newFolder('/test/outer/examples/inner'); - File innerPackagesFile = newDotPackagesFile('/test/outer/examples/inner'); + File innerPackagesFile = + newPackageConfigJsonFile('/test/outer/examples/inner'); File overrideOptionsFile = newAnalysisOptionsYamlFile('/test/override'); List roots = contextLocator.locateRoots( @@ -1059,10 +1063,10 @@ analyzer: void test_locateRoots_nested_packages_overriddenPackages() { Folder outerRootFolder = newFolder('/test/outer'); File outerOptionsFile = newAnalysisOptionsYamlFile('/test/outer'); - newDotPackagesFile('/test/outer'); + newPackageConfigJsonFile('/test/outer'); newFolder('/test/outer/examples/inner'); - newDotPackagesFile('/test/outer/examples/inner'); - File overridePackagesFile = newDotPackagesFile('/test/override'); + newPackageConfigJsonFile('/test/outer/examples/inner'); + File overridePackagesFile = newPackageConfigJsonFile('/test/override'); List roots = contextLocator.locateRoots( includedPaths: [outerRootFolder.path], @@ -1079,7 +1083,7 @@ analyzer: void test_locateRoots_nested_packagesDirectory_included() { Folder outerRootFolder = newFolder('/test/outer'); File outerOptionsFile = newAnalysisOptionsYamlFile('/test/outer'); - File outerPackagesFile = newDotPackagesFile('/test/outer'); + File outerPackagesFile = newPackageConfigJsonFile('/test/outer'); File innerOptionsFile = newAnalysisOptionsYamlFile('/test/outer/packages/inner'); @@ -1152,7 +1156,7 @@ analyzer: - **.g.dart analyzer: '''); - File packagesFile = newDotPackagesFile('/test/root'); + File packagesFile = newPackageConfigJsonFile('/test/root'); List roots = contextLocator.locateRoots(includedPaths: [rootFolder.path]); @@ -1178,7 +1182,7 @@ analyzer: exclude: - data/**.g.dart '''); - File packagesFile = newDotPackagesFile('/test/root'); + File packagesFile = newPackageConfigJsonFile('/test/root'); List roots = contextLocator.locateRoots(includedPaths: [rootFolder.path]); @@ -1211,7 +1215,7 @@ analyzer: exclude: - data/**/foo/** '''); - File packagesFile = newDotPackagesFile('/test/root'); + File packagesFile = newPackageConfigJsonFile('/test/root'); List roots = contextLocator.locateRoots(includedPaths: [rootFolder.path]); @@ -1243,7 +1247,7 @@ analyzer: exclude: - data/** '''); - File packagesFile = newDotPackagesFile('/test/root'); + File packagesFile = newPackageConfigJsonFile('/test/root'); newFolder('/test/root/data'); List roots = @@ -1277,7 +1281,7 @@ analyzer: - data/** '''); - File packagesFile = newDotPackagesFile('/test/root'); + File packagesFile = newPackageConfigJsonFile('/test/root'); newFolder('/test/root/data'); List roots = @@ -1314,7 +1318,7 @@ analyzer: - foo/** '''); - File packagesFile = newDotPackagesFile('/test/root'); + File packagesFile = newPackageConfigJsonFile('/test/root'); newFolder('/test/root/foo'); newFolder('/test/root/bar'); @@ -1348,7 +1352,7 @@ analyzer: exclude: - data/** '''); - File packagesFile = newDotPackagesFile('/test/root'); + File packagesFile = newPackageConfigJsonFile('/test/root'); newFolder('/test/root/data'); newAnalysisOptionsYamlFile('/test/root/data', content: ''); @@ -1375,7 +1379,7 @@ analyzer: void test_locateRoots_single_dir_directOptions_directPackages() { Folder rootFolder = newFolder('/test/root'); File optionsFile = newAnalysisOptionsYamlFile('/test/root'); - File packagesFile = newDotPackagesFile('/test/root'); + File packagesFile = newPackageConfigJsonFile('/test/root'); List roots = contextLocator.locateRoots(includedPaths: [rootFolder.path]); @@ -1391,7 +1395,7 @@ analyzer: void test_locateRoots_single_dir_directOptions_inheritedPackages() { Folder rootFolder = newFolder('/test/root'); File optionsFile = newAnalysisOptionsYamlFile('/test/root'); - File packagesFile = newDotPackagesFile('/test'); + File packagesFile = newPackageConfigJsonFile('/test'); List roots = contextLocator.locateRoots(includedPaths: [rootFolder.path]); @@ -1407,7 +1411,7 @@ analyzer: void test_locateRoots_single_dir_inheritedOptions_directPackages() { Folder rootFolder = newFolder('/test/root'); File optionsFile = newAnalysisOptionsYamlFile('/test'); - File packagesFile = newDotPackagesFile('/test/root'); + File packagesFile = newPackageConfigJsonFile('/test/root'); List roots = contextLocator.locateRoots(includedPaths: [rootFolder.path]); @@ -1423,7 +1427,7 @@ analyzer: void test_locateRoots_single_dir_inheritedOptions_inheritedPackages() { Folder rootFolder = newFolder('/test/root'); File optionsFile = newAnalysisOptionsYamlFile('/test'); - File packagesFile = newDotPackagesFile('/test'); + File packagesFile = newPackageConfigJsonFile('/test'); List roots = contextLocator.locateRoots(includedPaths: [rootFolder.path]); @@ -1439,7 +1443,7 @@ analyzer: void test_locateRoots_single_dir_prefer_packageConfigJson() { var rootFolder = newFolder('/test'); var optionsFile = newAnalysisOptionsYamlFile('/test'); - newDotPackagesFile('/test'); // the file is not used + newPackageConfigJsonFile('/test'); // the file is not used var packageConfigJsonFile = newPackageConfigJsonFile('/test'); var roots = contextLocator.locateRoots(includedPaths: [rootFolder.path]); @@ -1454,7 +1458,7 @@ analyzer: void test_locateRoots_single_file_inheritedOptions_directPackages() { File optionsFile = newAnalysisOptionsYamlFile('/test'); - File packagesFile = newDotPackagesFile('/test/root'); + File packagesFile = newPackageConfigJsonFile('/test/root'); File testFile = newFile('/test/root/test.dart'); List roots = @@ -1470,7 +1474,7 @@ analyzer: void test_locateRoots_single_file_notExisting() { File optionsFile = newAnalysisOptionsYamlFile('/test'); - File packagesFile = newDotPackagesFile('/test/root'); + File packagesFile = newPackageConfigJsonFile('/test/root'); File testFile = getFile('/test/root/test.dart'); List roots = diff --git a/pkg/analyzer/test/src/services/available_declarations_test.dart b/pkg/analyzer/test/src/services/available_declarations_test.dart index efd0cc1f2fc..8626c968cc7 100644 --- a/pkg/analyzer/test/src/services/available_declarations_test.dart +++ b/pkg/analyzer/test/src/services/available_declarations_test.dart @@ -14,6 +14,8 @@ import 'package:analyzer/src/test_utilities/resource_provider_mixin.dart'; import 'package:test/test.dart'; import 'package:test_reflective_loader/test_reflective_loader.dart'; +import '../dart/resolution/context_collection_resolution.dart'; + main() { defineReflectiveSuite(() { defineReflectiveTests(AvailableDeclarationsTest); @@ -38,43 +40,20 @@ class AbstractContextTest with ResourceProviderMixin { Folder get sdkRoot => newFolder('/sdk'); - void addDotPackagesDependency(String path, String name, String rootPath) { - var packagesFile = getFile(path); - - String packagesContent; - try { - packagesContent = packagesFile.readAsStringSync(); - } catch (_) { - packagesContent = ''; - } - - // Ignore if there is already the same package dependency. - if (packagesContent.contains('$name:file://')) { - return; - } - - rootPath = convertPath(rootPath); - packagesContent += '$name:${toUri('$rootPath/lib')}\n'; - - packagesFile.writeAsStringSync(packagesContent); - - createAnalysisContexts(); - } - - void addTestPackageDependency(String name, String rootPath) { - addDotPackagesDependency('/home/test/.packages', name, rootPath); - } - /// Create all analysis contexts in `/home`. void createAnalysisContexts() { + createAnalysisContexts0('/home', '/home/test'); + } + + void createAnalysisContexts0(String rootPath, String testPath) { analysisContextCollection = AnalysisContextCollectionImpl( - includedPaths: [convertPath('/home')], + includedPaths: [convertPath(rootPath)], resourceProvider: resourceProvider, sdkPath: sdkRoot.path, ); - var testPath = convertPath('/home/test'); - testAnalysisContext = getContext(testPath); + var testPath_ = convertPath(testPath); + testAnalysisContext = getContext(testPath_); } /// Create an analysis options file based on the given arguments. @@ -107,12 +86,36 @@ class AbstractContextTest with ResourceProviderMixin { ); newFolder('/home/test'); - newDotPackagesFile('/home/test', content: ''' -test:${toUri('/home/test/lib')} -'''); + writeTestPackageConfig( + PackageConfigFileBuilder(), + ); createAnalysisContexts(); } + + void writePackageConfig( + String directoryPath, + PackageConfigFileBuilder config, + ) { + newPackageConfigJsonFile( + directoryPath, + content: config.toContent( + toUriStr: toUriStr, + ), + ); + createAnalysisContexts(); + } + + void writeTestPackageConfig(PackageConfigFileBuilder config) { + config = config.copy(); + + config.add( + name: 'test', + rootPath: '/home/test', + ); + + writePackageConfig('/home/test', config); + } } @reflectiveTest @@ -124,14 +127,20 @@ class AvailableDeclarationsTest extends _Base { dependencies: aaa: any '''); - addDotPackagesDependency('/home/bbb/.packages', 'aaa', '/home/aaa'); + writePackageConfig( + '/home/bbb', + PackageConfigFileBuilder()..add(name: 'aaa', rootPath: '/home/aaa'), + ); newFile('/home/bbb/lib/b.dart', content: 'class B {}'); newPubspecYamlFile('/home/ccc', r''' dependencies: aaa: any '''); - addDotPackagesDependency('/home/ccc/.packages', 'aaa', '/home/aaa'); + writePackageConfig( + '/home/ccc', + PackageConfigFileBuilder()..add(name: 'aaa', rootPath: '/home/aaa'), + ); newFile('/home/ccc/lib/c.dart', content: 'class C {}'); createAnalysisContexts(); @@ -563,7 +572,9 @@ name: test dependencies: aaa: any '''); - addTestPackageDependency('aaa', '/packages/aaa'); + writeTestPackageConfig( + PackageConfigFileBuilder()..add(name: 'aaa', rootPath: '/packages/aaa'), + ); var homeContext = analysisContextCollection.contextFor(homePath); var testContext = analysisContextCollection.contextFor(testPath); @@ -3031,160 +3042,6 @@ int foo = 0; @reflectiveTest class GetLibrariesTest extends _Base { - test_bazel() async { - newFile('/home/aaa/lib/a.dart', content: 'class A {}'); - newFile('/home/aaa/lib/src/a2.dart', content: 'class A2 {}'); - - newFile('/home/bbb/lib/b.dart', content: 'class B {}'); - newFile('/home/bbb/lib/src/b2.dart', content: 'class B2 {}'); - - newFile('/home/material_button/BUILD', content: ''); - newFile( - '/home/material_button/lib/button.dart', - content: 'class MaterialButton {}', - ); - newFile( - '/home/material_button/test/button_test.dart', - content: 'class MaterialButtonTest {}', - ); - - newFile('/home/material_button/testing/BUILD', content: ''); - newFile( - '/home/material_button/testing/lib/material_button_po.dart', - content: 'class MaterialButtonPO {}', - ); - - var packagesFilePath = '/home/material_button/.packages'; - addDotPackagesDependency(packagesFilePath, 'aaa', '/home/aaa'); - addDotPackagesDependency(packagesFilePath, 'bbb', '/home/bbb'); - addDotPackagesDependency( - packagesFilePath, - 'material_button', - '/home/material_button', - ); - addDotPackagesDependency( - packagesFilePath, - 'material_button_testing', - '/home/material_button/testing', - ); - - var analysisContext = analysisContextCollection.contextFor( - convertPath('/home/material_button'), - ); - var context = tracker.addContext(analysisContext); - context.setDependencies({ - convertPath('/home/material_button'): [convertPath('/home/aaa/lib')], - convertPath('/home/material_button/testing'): [ - convertPath('/home/bbb/lib'), - convertPath('/home/material_button/lib'), - ], - }); - await _doAllTrackerWork(); - - _assertHasLibrary('package:aaa/a.dart', declarations: [ - _ExpectedDeclaration.class_('A', [ - _ExpectedDeclaration.constructor(''), - ]), - ]); - _assertHasNoLibrary('package:aaa/src/a2.dart'); - - _assertHasLibrary('package:bbb/b.dart', declarations: [ - _ExpectedDeclaration.class_('B', [ - _ExpectedDeclaration.constructor(''), - ]), - ]); - _assertHasNoLibrary('package:bbb/src/b2.dart'); - - _assertHasLibrary('package:material_button/button.dart', declarations: [ - _ExpectedDeclaration.class_('MaterialButton', [ - _ExpectedDeclaration.constructor(''), - ]), - ]); - _assertHasLibrary( - toUriStr('/home/material_button/test/button_test.dart'), - declarations: [ - _ExpectedDeclaration.class_('MaterialButtonTest', [ - _ExpectedDeclaration.constructor(''), - ]), - ], - ); - _assertHasLibrary( - 'package:material_button_testing/material_button_po.dart', - declarations: [ - _ExpectedDeclaration.class_('MaterialButtonPO', [ - _ExpectedDeclaration.constructor(''), - ]), - ], - ); - - { - var path = convertPath('/home/material_button/lib/_.dart'); - var libraries = context.getLibraries(path); - _assertHasLibraries( - libraries.sdk, - uriList: ['dart:core', 'dart:async'], - ); - _assertHasLibraries( - libraries.dependencies, - uriList: ['package:aaa/a.dart'], - only: true, - ); - _assertHasLibraries( - libraries.context, - uriList: [ - 'package:material_button/button.dart', - ], - only: true, - ); - } - - { - var path = convertPath('/home/material_button/test/_.dart'); - var libraries = context.getLibraries(path); - _assertHasLibraries( - libraries.sdk, - uriList: ['dart:core', 'dart:async'], - ); - _assertHasLibraries( - libraries.dependencies, - uriList: ['package:aaa/a.dart'], - only: true, - ); - _assertHasLibraries( - libraries.context, - uriList: [ - 'package:material_button/button.dart', - toUriStr('/home/material_button/test/button_test.dart'), - ], - only: true, - ); - } - - { - var path = convertPath('/home/material_button/testing/lib/_.dart'); - var libraries = context.getLibraries(path); - _assertHasLibraries( - libraries.sdk, - uriList: ['dart:core', 'dart:async'], - ); - _assertHasLibraries( - libraries.dependencies, - uriList: [ - 'package:bbb/b.dart', - 'package:material_button/button.dart', - ], - only: true, - ); - _assertHasLibraries( - libraries.context, - uriList: [ - 'package:material_button_testing/material_button_po.dart', - ], - only: true, - ); - } - } - test_excludeSelf() async { var a = convertPath('/home/test/lib/a.dart'); var b = convertPath('/home/test/lib/b.dart'); @@ -3272,10 +3129,13 @@ dependencies: '''); newFile('/home/test/samples/basic/lib/s.dart', content: 'class S {}'); - addTestPackageDependency('aaa', '/home/aaa'); - addTestPackageDependency('bbb', '/home/bbb'); - addTestPackageDependency('ccc', '/home/ccc'); - addTestPackageDependency('basic', '/home/test/samples/basic'); + writeTestPackageConfig( + PackageConfigFileBuilder() + ..add(name: 'aaa', rootPath: '/home/aaa') + ..add(name: 'bbb', rootPath: '/home/bbb') + ..add(name: 'ccc', rootPath: '/home/ccc') + ..add(name: 'basic', rootPath: '/home/test/samples/basic'), + ); var context = tracker.addContext(testAnalysisContext); await _doAllTrackerWork(); @@ -3449,8 +3309,11 @@ class A3 {} class B {} '''); - addTestPackageDependency('aaa', '/home/aaa'); - addTestPackageDependency('bbb', '/home/bbb'); + writeTestPackageConfig( + PackageConfigFileBuilder() + ..add(name: 'aaa', rootPath: '/home/aaa') + ..add(name: 'bbb', rootPath: '/home/bbb'), + ); newFile('/home/test/lib/t.dart', content: 'class T {}'); newFile('/home/test/lib/src/t2.dart', content: 'class T2 {}'); @@ -3554,8 +3417,11 @@ class A {} class B {} '''); - addTestPackageDependency('aaa', '/home/aaa'); - addTestPackageDependency('bbb', '/home/bbb'); + writeTestPackageConfig( + PackageConfigFileBuilder() + ..add(name: 'aaa', rootPath: '/home/aaa') + ..add(name: 'bbb', rootPath: '/home/bbb'), + ); newFile('/home/test/lib/test.dart', content: r''' class C {}