| 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.domain.analysis.abstract; | 5 library test.domain.analysis.abstract; |
| 6 | 6 |
| 7 import 'dart:async'; | 7 import 'dart:async'; |
| 8 | 8 |
| 9 import 'package:analysis_server/plugin/protocol/protocol.dart'; | 9 import 'package:analysis_server/plugin/protocol/protocol.dart'; |
| 10 import 'package:analysis_server/src/analysis_server.dart'; | 10 import 'package:analysis_server/src/analysis_server.dart'; |
| (...skipping 30 matching lines...) Expand all Loading... |
| 41 } | 41 } |
| 42 return length; | 42 return length; |
| 43 } | 43 } |
| 44 | 44 |
| 45 /** | 45 /** |
| 46 * An abstract base for all 'analysis' domain tests. | 46 * An abstract base for all 'analysis' domain tests. |
| 47 */ | 47 */ |
| 48 class AbstractAnalysisTest { | 48 class AbstractAnalysisTest { |
| 49 MockServerChannel serverChannel; | 49 MockServerChannel serverChannel; |
| 50 MemoryResourceProvider resourceProvider; | 50 MemoryResourceProvider resourceProvider; |
| 51 MockPackageMapProvider packageMapProvider; | |
| 52 AnalysisServer server; | 51 AnalysisServer server; |
| 53 RequestHandler handler; | 52 RequestHandler handler; |
| 54 | 53 |
| 55 final List<ServerErrorParams> serverErrors = <ServerErrorParams>[]; | 54 final List<ServerErrorParams> serverErrors = <ServerErrorParams>[]; |
| 56 final List<GeneralAnalysisService> generalServices = | 55 final List<GeneralAnalysisService> generalServices = |
| 57 <GeneralAnalysisService>[]; | 56 <GeneralAnalysisService>[]; |
| 58 final Map<AnalysisService, List<String>> analysisSubscriptions = {}; | 57 final Map<AnalysisService, List<String>> analysisSubscriptions = {}; |
| 59 | 58 |
| 60 String projectPath = '/project'; | 59 String projectPath = '/project'; |
| 61 String testFolder = '/project/bin'; | 60 String testFolder = '/project/bin'; |
| (...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 122 // | 121 // |
| 123 ExtensionManager manager = new ExtensionManager(); | 122 ExtensionManager manager = new ExtensionManager(); |
| 124 manager.processPlugins(plugins); | 123 manager.processPlugins(plugins); |
| 125 // | 124 // |
| 126 // Create server | 125 // Create server |
| 127 // | 126 // |
| 128 MockSdk sdk = new MockSdk(resourceProvider: resourceProvider); | 127 MockSdk sdk = new MockSdk(resourceProvider: resourceProvider); |
| 129 return new AnalysisServer( | 128 return new AnalysisServer( |
| 130 serverChannel, | 129 serverChannel, |
| 131 resourceProvider, | 130 resourceProvider, |
| 132 packageMapProvider, | |
| 133 index, | 131 index, |
| 134 serverPlugin, | 132 serverPlugin, |
| 135 new AnalysisServerOptions(), | 133 new AnalysisServerOptions(), |
| 136 new DartSdkManager('/', false, (_) => sdk), | 134 new DartSdkManager('/', false, (_) => sdk), |
| 137 InstrumentationService.NULL_SERVICE); | 135 InstrumentationService.NULL_SERVICE); |
| 138 } | 136 } |
| 139 | 137 |
| 140 Index createIndex() { | 138 Index createIndex() { |
| 141 return null; | 139 return null; |
| 142 } | 140 } |
| 143 | 141 |
| 144 /** | 142 /** |
| 145 * Creates a project `/project`. | 143 * Creates a project `/project`. |
| 146 */ | 144 */ |
| 147 void createProject({Map<String, String> packageRoots}) { | 145 void createProject({Map<String, String> packageRoots}) { |
| 148 resourceProvider.newFolder(projectPath); | 146 resourceProvider.newFolder(projectPath); |
| 149 Request request = | 147 Request request = new AnalysisSetAnalysisRootsParams([projectPath], [], |
| 150 new AnalysisSetAnalysisRootsParams([projectPath], [], packageRoots: pack
ageRoots).toRequest('0'); | 148 packageRoots: packageRoots) |
| 149 .toRequest('0'); |
| 151 handleSuccessfulRequest(request, handler: analysisHandler); | 150 handleSuccessfulRequest(request, handler: analysisHandler); |
| 152 } | 151 } |
| 153 | 152 |
| 154 /** | 153 /** |
| 155 * Returns the offset of [search] in [testCode]. | 154 * Returns the offset of [search] in [testCode]. |
| 156 * Fails if not found. | 155 * Fails if not found. |
| 157 */ | 156 */ |
| 158 int findFileOffset(String path, String search) { | 157 int findFileOffset(String path, String search) { |
| 159 File file = resourceProvider.getResource(path) as File; | 158 File file = resourceProvider.getResource(path) as File; |
| 160 String code = file.createSource().contents.data; | 159 String code = file.createSource().contents.data; |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 199 void removeGeneralAnalysisSubscription(GeneralAnalysisService service) { | 198 void removeGeneralAnalysisSubscription(GeneralAnalysisService service) { |
| 200 generalServices.remove(service); | 199 generalServices.remove(service); |
| 201 Request request = new AnalysisSetGeneralSubscriptionsParams(generalServices) | 200 Request request = new AnalysisSetGeneralSubscriptionsParams(generalServices) |
| 202 .toRequest('0'); | 201 .toRequest('0'); |
| 203 handleSuccessfulRequest(request); | 202 handleSuccessfulRequest(request); |
| 204 } | 203 } |
| 205 | 204 |
| 206 void setUp() { | 205 void setUp() { |
| 207 serverChannel = new MockServerChannel(); | 206 serverChannel = new MockServerChannel(); |
| 208 resourceProvider = new MemoryResourceProvider(); | 207 resourceProvider = new MemoryResourceProvider(); |
| 209 packageMapProvider = new MockPackageMapProvider(); | |
| 210 Index index = createIndex(); | 208 Index index = createIndex(); |
| 211 server = createAnalysisServer(index); | 209 server = createAnalysisServer(index); |
| 212 handler = analysisHandler; | 210 handler = analysisHandler; |
| 213 // listen for notifications | 211 // listen for notifications |
| 214 Stream<Notification> notificationStream = | 212 Stream<Notification> notificationStream = |
| 215 serverChannel.notificationController.stream; | 213 serverChannel.notificationController.stream; |
| 216 notificationStream.listen((Notification notification) { | 214 notificationStream.listen((Notification notification) { |
| 217 processNotification(notification); | 215 processNotification(notification); |
| 218 }); | 216 }); |
| 219 } | 217 } |
| (...skipping 14 matching lines...) Expand all Loading... |
| 234 } | 232 } |
| 235 | 233 |
| 236 /** | 234 /** |
| 237 * Completes with a successful [Response] for the given [request]. | 235 * Completes with a successful [Response] for the given [request]. |
| 238 * Otherwise fails. | 236 * Otherwise fails. |
| 239 */ | 237 */ |
| 240 Future<Response> waitResponse(Request request) async { | 238 Future<Response> waitResponse(Request request) async { |
| 241 return serverChannel.sendRequest(request); | 239 return serverChannel.sendRequest(request); |
| 242 } | 240 } |
| 243 } | 241 } |
| OLD | NEW |