| Index: pkg/analyzer/test/src/context/mock_sdk.dart
|
| diff --git a/pkg/analyzer/test/src/mock_sdk.dart b/pkg/analyzer/test/src/context/mock_sdk.dart
|
| similarity index 90%
|
| copy from pkg/analyzer/test/src/mock_sdk.dart
|
| copy to pkg/analyzer/test/src/context/mock_sdk.dart
|
| index 7cadfcc5b7db566df235908c22cd80f1a5a8a634..e5b7bcb772de78d396bf6dd3bfd698e3a70c8bb6 100644
|
| --- a/pkg/analyzer/test/src/mock_sdk.dart
|
| +++ b/pkg/analyzer/test/src/context/mock_sdk.dart
|
| @@ -6,7 +6,10 @@ library test.src.mock_sdk;
|
|
|
| import 'package:analyzer/file_system/file_system.dart' as resource;
|
| import 'package:analyzer/file_system/memory_file_system.dart' as resource;
|
| -import 'package:analyzer/src/generated/engine.dart';
|
| +import 'package:analyzer/src/context/cache.dart';
|
| +import 'package:analyzer/src/context/context.dart';
|
| +import 'package:analyzer/src/generated/engine.dart'
|
| + show AnalysisEngine, ChangeSet;
|
| import 'package:analyzer/src/generated/sdk.dart';
|
| import 'package:analyzer/src/generated/source.dart';
|
|
|
| @@ -175,9 +178,9 @@ class HtmlElement {}
|
| new resource.MemoryResourceProvider();
|
|
|
| /**
|
| - * The [AnalysisContext] which is used for all of the sources.
|
| + * The [AnalysisContextImpl] which is used for all of the sources.
|
| */
|
| - InternalAnalysisContext _analysisContext;
|
| + AnalysisContextImpl _analysisContext;
|
|
|
| MockSdk() {
|
| LIBRARIES.forEach((_MockSdkLibrary library) {
|
| @@ -186,9 +189,9 @@ class HtmlElement {}
|
| }
|
|
|
| @override
|
| - AnalysisContext get context {
|
| + AnalysisContextImpl get context {
|
| if (_analysisContext == null) {
|
| - _analysisContext = new SdkAnalysisContext();
|
| + _analysisContext = new _SdkAnalysisContext(this);
|
| SourceFactory factory = new SourceFactory([new DartUriResolver(this)]);
|
| _analysisContext.sourceFactory = factory;
|
| ChangeSet changeSet = new ChangeSet();
|
| @@ -313,3 +316,22 @@ class _MockSdkLibrary implements SdkLibrary {
|
|
|
| UnimplementedError get unimplemented => new UnimplementedError();
|
| }
|
| +
|
| +/**
|
| + * An [AnalysisContextImpl] that only contains sources for a Dart SDK.
|
| + */
|
| +class _SdkAnalysisContext extends AnalysisContextImpl {
|
| + final DartSdk sdk;
|
| +
|
| + _SdkAnalysisContext(this.sdk);
|
| +
|
| + @override
|
| + AnalysisCache createCacheFromSourceFactory(SourceFactory factory) {
|
| + if (factory == null) {
|
| + return super.createCacheFromSourceFactory(factory);
|
| + }
|
| + return new AnalysisCache(<CachePartition>[
|
| + AnalysisEngine.instance.partitionManager_new.forSdk(sdk)
|
| + ]);
|
| + }
|
| +}
|
|
|