| 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; | 5 library test.domain.analysis; | 
| 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'; | 
| 11 import 'package:analysis_server/src/constants.dart'; | 11 import 'package:analysis_server/src/constants.dart'; | 
| 12 import 'package:analysis_server/src/domain_analysis.dart'; | 12 import 'package:analysis_server/src/domain_analysis.dart'; | 
| 13 import 'package:analysis_server/src/plugin/server_plugin.dart'; | 13 import 'package:analysis_server/src/plugin/server_plugin.dart'; | 
| 14 import 'package:analyzer/file_system/memory_file_system.dart'; | 14 import 'package:analyzer/file_system/memory_file_system.dart'; | 
| 15 import 'package:analyzer/instrumentation/instrumentation.dart'; | 15 import 'package:analyzer/instrumentation/instrumentation.dart'; | 
|  | 16 import 'package:analyzer/src/generated/engine.dart'; | 
| 16 import 'package:analyzer/src/generated/sdk.dart'; | 17 import 'package:analyzer/src/generated/sdk.dart'; | 
| 17 import 'package:plugin/manager.dart'; | 18 import 'package:plugin/manager.dart'; | 
|  | 19 import 'package:plugin/plugin.dart'; | 
| 18 import 'package:test/test.dart'; | 20 import 'package:test/test.dart'; | 
| 19 import 'package:test_reflective_loader/test_reflective_loader.dart'; | 21 import 'package:test_reflective_loader/test_reflective_loader.dart'; | 
| 20 | 22 | 
| 21 import 'analysis_abstract.dart'; | 23 import 'analysis_abstract.dart'; | 
| 22 import 'mock_sdk.dart'; | 24 import 'mock_sdk.dart'; | 
| 23 import 'mocks.dart'; | 25 import 'mocks.dart'; | 
| 24 | 26 | 
| 25 main() { | 27 main() { | 
| 26   defineReflectiveSuite(() { | 28   defineReflectiveSuite(() { | 
| 27     defineReflectiveTests(AnalysisDomainTest); | 29     defineReflectiveTests(AnalysisDomainTest); | 
| 28     defineReflectiveTests(SetSubscriptionsTest); | 30     defineReflectiveTests(SetSubscriptionsTest); | 
| 29   }); | 31   }); | 
| 30 | 32 | 
| 31   MockServerChannel serverChannel; | 33   MockServerChannel serverChannel; | 
| 32   MemoryResourceProvider resourceProvider; | 34   MemoryResourceProvider resourceProvider; | 
| 33   AnalysisServer server; | 35   AnalysisServer server; | 
| 34   AnalysisDomainHandler handler; | 36   AnalysisDomainHandler handler; | 
| 35 | 37 | 
|  | 38   void processRequiredPlugins(ServerPlugin serverPlugin) { | 
|  | 39     List<Plugin> plugins = <Plugin>[]; | 
|  | 40     plugins.addAll(AnalysisEngine.instance.requiredPlugins); | 
|  | 41     plugins.add(AnalysisEngine.instance.optionsPlugin); | 
|  | 42     plugins.add(serverPlugin); | 
|  | 43 | 
|  | 44     ExtensionManager manager = new ExtensionManager(); | 
|  | 45     manager.processPlugins(plugins); | 
|  | 46   } | 
|  | 47 | 
| 36   setUp(() { | 48   setUp(() { | 
| 37     serverChannel = new MockServerChannel(); | 49     serverChannel = new MockServerChannel(); | 
| 38     resourceProvider = new MemoryResourceProvider(); | 50     resourceProvider = new MemoryResourceProvider(); | 
| 39     ExtensionManager manager = new ExtensionManager(); |  | 
| 40     ServerPlugin serverPlugin = new ServerPlugin(); | 51     ServerPlugin serverPlugin = new ServerPlugin(); | 
| 41     manager.processPlugins([serverPlugin]); | 52     processRequiredPlugins(serverPlugin); | 
| 42     // Create an SDK in the mock file system. | 53     // Create an SDK in the mock file system. | 
| 43     new MockSdk(resourceProvider: resourceProvider); | 54     new MockSdk(resourceProvider: resourceProvider); | 
| 44     server = new AnalysisServer( | 55     server = new AnalysisServer( | 
| 45         serverChannel, | 56         serverChannel, | 
| 46         resourceProvider, | 57         resourceProvider, | 
| 47         new MockPackageMapProvider(), | 58         new MockPackageMapProvider(), | 
| 48         null, | 59         null, | 
| 49         serverPlugin, | 60         serverPlugin, | 
| 50         new AnalysisServerOptions(), | 61         new AnalysisServerOptions(), | 
| 51         new DartSdkManager('/', false), | 62         new DartSdkManager('/', false), | 
| (...skipping 370 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 422   Map<AnalysisService, List<String>> analysisSubscriptions = {}; | 433   Map<AnalysisService, List<String>> analysisSubscriptions = {}; | 
| 423 | 434 | 
| 424   Map<String, List<AnalysisError>> filesErrors = {}; | 435   Map<String, List<AnalysisError>> filesErrors = {}; | 
| 425   Map<String, List<HighlightRegion>> filesHighlights = {}; | 436   Map<String, List<HighlightRegion>> filesHighlights = {}; | 
| 426   Map<String, List<NavigationRegion>> filesNavigation = {}; | 437   Map<String, List<NavigationRegion>> filesNavigation = {}; | 
| 427 | 438 | 
| 428   String testFile = '/project/bin/test.dart'; | 439   String testFile = '/project/bin/test.dart'; | 
| 429   String testCode; | 440   String testCode; | 
| 430 | 441 | 
| 431   AnalysisTestHelper() { | 442   AnalysisTestHelper() { | 
|  | 443     ServerPlugin serverPlugin = new ServerPlugin(); | 
|  | 444     processRequiredPlugins(serverPlugin); | 
| 432     serverChannel = new MockServerChannel(); | 445     serverChannel = new MockServerChannel(); | 
| 433     resourceProvider = new MemoryResourceProvider(); | 446     resourceProvider = new MemoryResourceProvider(); | 
| 434     ExtensionManager manager = new ExtensionManager(); |  | 
| 435     ServerPlugin serverPlugin = new ServerPlugin(); |  | 
| 436     manager.processPlugins([serverPlugin]); |  | 
| 437     // Create an SDK in the mock file system. | 447     // Create an SDK in the mock file system. | 
| 438     new MockSdk(resourceProvider: resourceProvider); | 448     new MockSdk(resourceProvider: resourceProvider); | 
| 439     server = new AnalysisServer( | 449     server = new AnalysisServer( | 
| 440         serverChannel, | 450         serverChannel, | 
| 441         resourceProvider, | 451         resourceProvider, | 
| 442         new MockPackageMapProvider(), | 452         new MockPackageMapProvider(), | 
| 443         null, | 453         null, | 
| 444         serverPlugin, | 454         serverPlugin, | 
| 445         new AnalysisServerOptions(), | 455         new AnalysisServerOptions(), | 
| 446         new DartSdkManager('/', false), | 456         new DartSdkManager('/', false), | 
| (...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 590   } | 600   } | 
| 591 | 601 | 
| 592   /** | 602   /** | 
| 593    * Validates that the given [request] is handled successfully. | 603    * Validates that the given [request] is handled successfully. | 
| 594    */ | 604    */ | 
| 595   void handleSuccessfulRequest(Request request) { | 605   void handleSuccessfulRequest(Request request) { | 
| 596     Response response = handler.handleRequest(request); | 606     Response response = handler.handleRequest(request); | 
| 597     expect(response, isResponseSuccess('0')); | 607     expect(response, isResponseSuccess('0')); | 
| 598   } | 608   } | 
| 599 | 609 | 
|  | 610   void processRequiredPlugins(ServerPlugin serverPlugin) { | 
|  | 611     List<Plugin> plugins = <Plugin>[]; | 
|  | 612     plugins.addAll(AnalysisEngine.instance.requiredPlugins); | 
|  | 613     plugins.add(AnalysisEngine.instance.optionsPlugin); | 
|  | 614     plugins.add(serverPlugin); | 
|  | 615 | 
|  | 616     ExtensionManager manager = new ExtensionManager(); | 
|  | 617     manager.processPlugins(plugins); | 
|  | 618   } | 
|  | 619 | 
| 600   /** | 620   /** | 
| 601    * Send an `updateContent` request for [testFile]. | 621    * Send an `updateContent` request for [testFile]. | 
| 602    */ | 622    */ | 
| 603   void sendContentChange(dynamic contentChange) { | 623   void sendContentChange(dynamic contentChange) { | 
| 604     Request request = new AnalysisUpdateContentParams({testFile: contentChange}) | 624     Request request = new AnalysisUpdateContentParams({testFile: contentChange}) | 
| 605         .toRequest('0'); | 625         .toRequest('0'); | 
| 606     handleSuccessfulRequest(request); | 626     handleSuccessfulRequest(request); | 
| 607   } | 627   } | 
| 608 | 628 | 
| 609   String setFileContent(String path, String content) { | 629   String setFileContent(String path, String content) { | 
| (...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 774   test_beforeAnalysis() async { | 794   test_beforeAnalysis() async { | 
| 775     addTestFile('int V = 42;'); | 795     addTestFile('int V = 42;'); | 
| 776     createProject(); | 796     createProject(); | 
| 777     // subscribe | 797     // subscribe | 
| 778     addAnalysisSubscription(AnalysisService.HIGHLIGHTS, testFile); | 798     addAnalysisSubscription(AnalysisService.HIGHLIGHTS, testFile); | 
| 779     // wait for analysis | 799     // wait for analysis | 
| 780     await waitForTasksFinished(); | 800     await waitForTasksFinished(); | 
| 781     expect(filesHighlights[testFile], isNotEmpty); | 801     expect(filesHighlights[testFile], isNotEmpty); | 
| 782   } | 802   } | 
| 783 } | 803 } | 
| OLD | NEW | 
|---|