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

Side by Side Diff: pkg/analysis_server/test/context_manager_test.dart

Issue 1467623002: Fix test failures on the bots (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Created 5 years, 1 month 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
OLDNEW
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 'dart:collection'; 7 import 'dart:collection';
8 8
9 import 'package:analysis_server/src/context_manager.dart'; 9 import 'package:analysis_server/src/context_manager.dart';
10 import 'package:analyzer/file_system/file_system.dart'; 10 import 'package:analyzer/file_system/file_system.dart';
11 import 'package:analyzer/file_system/memory_file_system.dart'; 11 import 'package:analyzer/file_system/memory_file_system.dart';
12 import 'package:analyzer/instrumentation/instrumentation.dart'; 12 import 'package:analyzer/instrumentation/instrumentation.dart';
13 import 'package:analyzer/source/embedder.dart'; 13 import 'package:analyzer/source/embedder.dart';
14 import 'package:analyzer/src/generated/engine.dart'; 14 import 'package:analyzer/src/generated/engine.dart';
15 import 'package:analyzer/src/generated/error.dart'; 15 import 'package:analyzer/src/generated/error.dart';
16 import 'package:analyzer/src/generated/source.dart'; 16 import 'package:analyzer/src/generated/source.dart';
17 import 'package:analyzer/src/generated/source_io.dart'; 17 import 'package:analyzer/src/generated/source_io.dart';
18 import 'package:package_config/packages.dart'; 18 import 'package:package_config/packages.dart';
19 import 'package:path/path.dart'; 19 import 'package:path/path.dart';
20 import 'package:plugin/manager.dart';
20 import 'package:test_reflective_loader/test_reflective_loader.dart'; 21 import 'package:test_reflective_loader/test_reflective_loader.dart';
21 import 'package:unittest/unittest.dart'; 22 import 'package:unittest/unittest.dart';
22 23
23 import 'mocks.dart'; 24 import 'mocks.dart';
24 import 'utils.dart'; 25 import 'utils.dart';
25 26
26 main() { 27 main() {
27 initializeTestEnvironment(); 28 initializeTestEnvironment();
28 defineReflectiveTests(AbstractContextManagerTest); 29 defineReflectiveTests(AbstractContextManagerTest);
29 } 30 }
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
77 String folderPath = posix.joinAll(pathComponents); 78 String folderPath = posix.joinAll(pathComponents);
78 resourceProvider.newFolder(folderPath); 79 resourceProvider.newFolder(folderPath);
79 return folderPath; 80 return folderPath;
80 } 81 }
81 82
82 UriResolver providePackageResolver(Folder folder) { 83 UriResolver providePackageResolver(Folder folder) {
83 return packageResolver; 84 return packageResolver;
84 } 85 }
85 86
86 void setUp() { 87 void setUp() {
88 ExtensionManager extensionManager = new ExtensionManager();
89 extensionManager.processPlugins(AnalysisEngine.instance.supportedPlugins);
87 resourceProvider = new MemoryResourceProvider(); 90 resourceProvider = new MemoryResourceProvider();
88 packageMapProvider = new MockPackageMapProvider(); 91 packageMapProvider = new MockPackageMapProvider();
89 manager = new ContextManagerImpl(resourceProvider, providePackageResolver, 92 manager = new ContextManagerImpl(resourceProvider, providePackageResolver,
90 packageMapProvider, InstrumentationService.NULL_SERVICE); 93 packageMapProvider, InstrumentationService.NULL_SERVICE);
91 callbacks = new TestContextManagerCallbacks(resourceProvider); 94 callbacks = new TestContextManagerCallbacks(resourceProvider);
92 manager.callbacks = callbacks; 95 manager.callbacks = callbacks;
93 resourceProvider.newFolder(projPath); 96 resourceProvider.newFolder(projPath);
94 } 97 }
95 98
99 test_analysis_options_parse_failure() async {
100 // Create files.
101 String libPath = newFolder([projPath, LIB_NAME]);
102 newFile([libPath, 'main.dart']);
103 String sdkExtPath = newFolder([projPath, 'sdk_ext']);
104 newFile([sdkExtPath, 'entry.dart']);
105 String sdkExtSrcPath = newFolder([projPath, 'sdk_ext', 'src']);
106 newFile([sdkExtSrcPath, 'part.dart']);
107 // Setup analysis options file with ignore list.
108 newFile(
109 [projPath, '.analysis_options'],
110 r'''
111 ;
112 ''');
113 // Setup context.
114 manager.setRoots(<String>[projPath], <String>[], <String, String>{});
115
116 // No error means success.
117 }
118
119 void test_contextsInAnalysisRoot_nestedContext() {
120 String subProjPath = posix.join(projPath, 'subproj');
121 Folder subProjFolder = resourceProvider.newFolder(subProjPath);
122 resourceProvider.newFile(
123 posix.join(subProjPath, 'pubspec.yaml'), 'contents');
124 String subProjFilePath = posix.join(subProjPath, 'file.dart');
125 resourceProvider.newFile(subProjFilePath, 'contents');
126 manager.setRoots(<String>[projPath], <String>[], <String, String>{});
127 // Make sure that there really are contexts for both the main project and
128 // the subproject.
129 Folder projFolder = resourceProvider.getFolder(projPath);
130 ContextInfo projContextInfo = manager.getContextInfoFor(projFolder);
131 expect(projContextInfo, isNotNull);
132 expect(projContextInfo.folder, projFolder);
133 ContextInfo subProjContextInfo = manager.getContextInfoFor(subProjFolder);
134 expect(subProjContextInfo, isNotNull);
135 expect(subProjContextInfo.folder, subProjFolder);
136 expect(projContextInfo.context != subProjContextInfo.context, isTrue);
137 // Check that contextsInAnalysisRoot() works.
138 List<AnalysisContext> contexts = manager.contextsInAnalysisRoot(projFolder);
139 expect(contexts, hasLength(2));
140 expect(contexts, contains(projContextInfo.context));
141 expect(contexts, contains(subProjContextInfo.context));
142 }
143
96 test_embedder_options() async { 144 test_embedder_options() async {
97 // Create files. 145 // Create files.
98 String libPath = newFolder([projPath, LIB_NAME]); 146 String libPath = newFolder([projPath, LIB_NAME]);
99 String sdkExtPath = newFolder([projPath, 'sdk_ext']); 147 String sdkExtPath = newFolder([projPath, 'sdk_ext']);
100 newFile([projPath, 'test', 'test.dart']); 148 newFile([projPath, 'test', 'test.dart']);
101 newFile([sdkExtPath, 'entry.dart']); 149 newFile([sdkExtPath, 'entry.dart']);
102 // Setup _embedder.yaml. 150 // Setup _embedder.yaml.
103 newFile( 151 newFile(
104 [libPath, '_embedder.yaml'], 152 [libPath, '_embedder.yaml'],
105 r''' 153 r'''
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
160 ['x'] 208 ['x']
161 ])), 209 ])),
162 isTrue); 210 isTrue);
163 211
164 // Sanity check embedder libs. 212 // Sanity check embedder libs.
165 var source = context.sourceFactory.forUri('dart:foobar'); 213 var source = context.sourceFactory.forUri('dart:foobar');
166 expect(source, isNotNull); 214 expect(source, isNotNull);
167 expect(source.fullName, '/my/proj/sdk_ext/entry.dart'); 215 expect(source.fullName, '/my/proj/sdk_ext/entry.dart');
168 } 216 }
169 217
170 test_analysis_options_parse_failure() async {
171 // Create files.
172 String libPath = newFolder([projPath, LIB_NAME]);
173 newFile([libPath, 'main.dart']);
174 String sdkExtPath = newFolder([projPath, 'sdk_ext']);
175 newFile([sdkExtPath, 'entry.dart']);
176 String sdkExtSrcPath = newFolder([projPath, 'sdk_ext', 'src']);
177 newFile([sdkExtSrcPath, 'part.dart']);
178 // Setup analysis options file with ignore list.
179 newFile(
180 [projPath, '.analysis_options'],
181 r'''
182 ;
183 ''');
184 // Setup context.
185 manager.setRoots(<String>[projPath], <String>[], <String, String>{});
186
187 // No error means success.
188 }
189
190 void test_contextsInAnalysisRoot_nestedContext() {
191 String subProjPath = posix.join(projPath, 'subproj');
192 Folder subProjFolder = resourceProvider.newFolder(subProjPath);
193 resourceProvider.newFile(
194 posix.join(subProjPath, 'pubspec.yaml'), 'contents');
195 String subProjFilePath = posix.join(subProjPath, 'file.dart');
196 resourceProvider.newFile(subProjFilePath, 'contents');
197 manager.setRoots(<String>[projPath], <String>[], <String, String>{});
198 // Make sure that there really are contexts for both the main project and
199 // the subproject.
200 Folder projFolder = resourceProvider.getFolder(projPath);
201 ContextInfo projContextInfo = manager.getContextInfoFor(projFolder);
202 expect(projContextInfo, isNotNull);
203 expect(projContextInfo.folder, projFolder);
204 ContextInfo subProjContextInfo = manager.getContextInfoFor(subProjFolder);
205 expect(subProjContextInfo, isNotNull);
206 expect(subProjContextInfo.folder, subProjFolder);
207 expect(projContextInfo.context != subProjContextInfo.context, isTrue);
208 // Check that contextsInAnalysisRoot() works.
209 List<AnalysisContext> contexts = manager.contextsInAnalysisRoot(projFolder);
210 expect(contexts, hasLength(2));
211 expect(contexts, contains(projContextInfo.context));
212 expect(contexts, contains(subProjContextInfo.context));
213 }
214
215 test_embedder_packagespec() async { 218 test_embedder_packagespec() async {
216 // Create files. 219 // Create files.
217 String libPath = newFolder([projPath, LIB_NAME]); 220 String libPath = newFolder([projPath, LIB_NAME]);
218 newFile([libPath, 'main.dart']); 221 newFile([libPath, 'main.dart']);
219 newFile([libPath, 'nope.dart']); 222 newFile([libPath, 'nope.dart']);
220 String sdkExtPath = newFolder([projPath, 'sdk_ext']); 223 String sdkExtPath = newFolder([projPath, 'sdk_ext']);
221 newFile([sdkExtPath, 'entry.dart']); 224 newFile([sdkExtPath, 'entry.dart']);
222 String sdkExtSrcPath = newFolder([projPath, 'sdk_ext', 'src']); 225 String sdkExtSrcPath = newFolder([projPath, 'sdk_ext', 'src']);
223 newFile([sdkExtSrcPath, 'part.dart']); 226 newFile([sdkExtSrcPath, 'part.dart']);
224 // Setup _embedder.yaml. 227 // Setup _embedder.yaml.
(...skipping 1910 matching lines...) Expand 10 before | Expand all | Expand 10 after
2135 class TestUriResolver extends UriResolver { 2138 class TestUriResolver extends UriResolver {
2136 Map<Uri, Source> uriMap; 2139 Map<Uri, Source> uriMap;
2137 2140
2138 TestUriResolver(this.uriMap); 2141 TestUriResolver(this.uriMap);
2139 2142
2140 @override 2143 @override
2141 Source resolveAbsolute(Uri uri, [Uri actualUri]) { 2144 Source resolveAbsolute(Uri uri, [Uri actualUri]) {
2142 return uriMap[uri]; 2145 return uriMap[uri];
2143 } 2146 }
2144 } 2147 }
OLDNEW
« no previous file with comments | « pkg/analysis_server/test/analysis_server_test.dart ('k') | pkg/analysis_server/test/domain_diagnostic_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698