| Index: pkg/analyzer/test/src/summary/pub_summary_test.dart
|
| diff --git a/pkg/analyzer/test/src/summary/pub_summary_test.dart b/pkg/analyzer/test/src/summary/pub_summary_test.dart
|
| index d14689e61a4c908f6047b24be59557f7e84e8946..799cc90f6764eba16f5c878eaaa0dcac1cc3b1fd 100644
|
| --- a/pkg/analyzer/test/src/summary/pub_summary_test.dart
|
| +++ b/pkg/analyzer/test/src/summary/pub_summary_test.dart
|
| @@ -519,6 +519,69 @@ class A {}
|
| }
|
| }
|
|
|
| + test_getLinkedBundles_useSdkExtension() async {
|
| + resourceProvider.newFile(
|
| + '$CACHE/aaa/lib/a.dart',
|
| + '''
|
| +import 'dart:bbb';
|
| +ExtB a;
|
| +''');
|
| + resourceProvider.newFile(
|
| + '$CACHE/bbb/lib/b.dart',
|
| + '''
|
| +import 'dart:bbb';
|
| +ExtB b;
|
| +''');
|
| + resourceProvider.newFile(
|
| + '$CACHE/bbb/sdk_ext/extB.dart',
|
| + '''
|
| +class ExtB {}
|
| +''');
|
| + resourceProvider.newFile(
|
| + '$CACHE/bbb/lib/_sdkext',
|
| + '''
|
| +{
|
| + "dart:bbb": "../sdk_ext/extB.dart"
|
| +}
|
| +''');
|
| +
|
| + // Configure packages resolution.
|
| + Folder libFolderA = resourceProvider.newFolder('$CACHE/aaa/lib');
|
| + Folder libFolderB = resourceProvider.newFolder('$CACHE/bbb/lib');
|
| + context.sourceFactory = new SourceFactory(<UriResolver>[
|
| + sdkResolver,
|
| + resourceResolver,
|
| + new PackageMapUriResolver(resourceProvider, {
|
| + 'aaa': [libFolderA],
|
| + 'bbb': [libFolderB],
|
| + })
|
| + ]);
|
| +
|
| + // Ensure unlinked bundles.
|
| + manager.getUnlinkedBundles(context);
|
| + await manager.onUnlinkedComplete;
|
| +
|
| + // Now we should be able to get linked bundles.
|
| + PackageBundle sdkBundle = getSdkBundle(sdk);
|
| + List<LinkedPubPackage> linkedPackages =
|
| + manager.getLinkedBundles(context, sdkBundle);
|
| + expect(linkedPackages, hasLength(2));
|
| +
|
| + // package:aaa
|
| + {
|
| + LinkedPubPackage linkedPackage = linkedPackages
|
| + .singleWhere((linkedPackage) => linkedPackage.package.name == 'aaa');
|
| + _assertHasLinkedVariable(linkedPackage, 'a', 'ExtB', 'dart:bbb');
|
| + }
|
| +
|
| + // package:bbb
|
| + {
|
| + LinkedPubPackage linkedPackage = linkedPackages
|
| + .singleWhere((linkedPackage) => linkedPackage.package.name == 'bbb');
|
| + _assertHasLinkedVariable(linkedPackage, 'b', 'ExtB', 'dart:bbb');
|
| + }
|
| + }
|
| +
|
| test_getLinkedBundles_wrongScheme() async {
|
| resourceProvider.newFile(
|
| '$CACHE/aaa/lib/a.dart',
|
|
|