| 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.services.completion.suggestion; | 5 library test.services.completion.suggestion; | 
| 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'; |  | 
| 11 import 'package:analysis_server/src/provisional/completion/completion_core.dart' | 10 import 'package:analysis_server/src/provisional/completion/completion_core.dart' | 
| 12     show CompletionRequest, CompletionResult; | 11     show CompletionRequest, CompletionResult; | 
| 13 import 'package:analysis_server/src/services/completion/completion_core.dart'; | 12 import 'package:analysis_server/src/services/completion/completion_core.dart'; | 
| 14 import 'package:analysis_server/src/services/completion/completion_manager.dart'
     ; | 13 import 'package:analysis_server/src/services/completion/completion_manager.dart'
     ; | 
| 15 import 'package:analysis_server/src/services/completion/dart_completion_manager.
     dart'; | 14 import 'package:analysis_server/src/services/completion/dart_completion_manager.
     dart'; | 
| 16 import 'package:analysis_server/src/services/index/index.dart'; | 15 import 'package:analysis_server/src/services/index/index.dart'; | 
| 17 import 'package:analysis_server/src/services/index/local_memory_index.dart'; | 16 import 'package:analysis_server/src/services/index/local_memory_index.dart'; | 
| 18 import 'package:analysis_server/src/services/search/search_engine.dart'; | 17 import 'package:analysis_server/src/services/search/search_engine.dart'; | 
| 19 import 'package:analysis_server/src/services/search/search_engine_internal.dart'
     ; | 18 import 'package:analysis_server/src/services/search/search_engine_internal.dart'
     ; | 
| 20 import 'package:analyzer/src/generated/engine.dart'; | 19 import 'package:analyzer/src/generated/engine.dart'; | 
| 21 import 'package:analyzer/src/generated/source.dart'; | 20 import 'package:analyzer/src/generated/source.dart'; | 
| 22 import 'package:test_reflective_loader/test_reflective_loader.dart'; | 21 import 'package:test_reflective_loader/test_reflective_loader.dart'; | 
| 23 import 'package:unittest/unittest.dart'; | 22 import 'package:unittest/unittest.dart'; | 
| 24 | 23 | 
| 25 import '../../abstract_single_unit.dart'; | 24 import '../../abstract_single_unit.dart'; | 
| 26 import '../../operation/operation_queue_test.dart'; |  | 
| 27 import '../../utils.dart'; | 25 import '../../utils.dart'; | 
| 28 | 26 | 
| 29 main() { | 27 main() { | 
| 30   initializeTestEnvironment(); | 28   initializeTestEnvironment(); | 
| 31   defineReflectiveTests(DartCompletionManagerTest); | 29   defineReflectiveTests(DartCompletionManagerTest); | 
| 32 } | 30 } | 
| 33 | 31 | 
| 34 /** | 32 /** | 
| 35  * Returns a [Future] that completes after pumping the event queue [times] | 33  * Returns a [Future] that completes after pumping the event queue [times] | 
| 36  * times. By default, this should pump the event queue enough times to allow | 34  * times. By default, this should pump the event queue enough times to allow | 
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 81     _continuePerformingAnalysis = false; | 79     _continuePerformingAnalysis = false; | 
| 82   } | 80   } | 
| 83 | 81 | 
| 84   test_compute_fastAndFull() { | 82   test_compute_fastAndFull() { | 
| 85     contributor1 = new MockCompletionContributor(suggestion1, null); | 83     contributor1 = new MockCompletionContributor(suggestion1, null); | 
| 86     contributor2 = new MockCompletionContributor(null, suggestion2); | 84     contributor2 = new MockCompletionContributor(null, suggestion2); | 
| 87     manager.contributors = [contributor1, contributor2]; | 85     manager.contributors = [contributor1, contributor2]; | 
| 88     manager.newContributors = []; | 86     manager.newContributors = []; | 
| 89     int count = 0; | 87     int count = 0; | 
| 90     bool done = false; | 88     bool done = false; | 
| 91     AnalysisServer server = new AnalysisServerMock(searchEngine: searchEngine); |  | 
| 92     CompletionRequest completionRequest = | 89     CompletionRequest completionRequest = | 
| 93         new CompletionRequestImpl(server, context, source, 0); | 90         new CompletionRequestImpl(context, provider, searchEngine, source, 0); | 
| 94     manager.results(completionRequest).listen((CompletionResult r) { | 91     manager.results(completionRequest).listen((CompletionResult r) { | 
| 95       bool isLast = r is CompletionResultImpl ? r.isLast : true; | 92       bool isLast = r is CompletionResultImpl ? r.isLast : true; | 
| 96       switch (++count) { | 93       switch (++count) { | 
| 97         case 1: | 94         case 1: | 
| 98           contributor1.assertCalls(context, source, 0, searchEngine); | 95           contributor1.assertCalls(context, source, 0, searchEngine); | 
| 99           expect(contributor1.fastCount, equals(1)); | 96           expect(contributor1.fastCount, equals(1)); | 
| 100           expect(contributor1.fullCount, equals(0)); | 97           expect(contributor1.fullCount, equals(0)); | 
| 101           contributor2.assertCalls(context, source, 0, searchEngine); | 98           contributor2.assertCalls(context, source, 0, searchEngine); | 
| 102           expect(contributor2.fastCount, equals(1)); | 99           expect(contributor2.fastCount, equals(1)); | 
| 103           expect(contributor2.fullCount, equals(1)); | 100           expect(contributor2.fullCount, equals(1)); | 
| (...skipping 16 matching lines...) Expand all  Loading... | 
| 120     }); | 117     }); | 
| 121   } | 118   } | 
| 122 | 119 | 
| 123   test_compute_fastOnly() { | 120   test_compute_fastOnly() { | 
| 124     contributor1 = new MockCompletionContributor(suggestion1, null); | 121     contributor1 = new MockCompletionContributor(suggestion1, null); | 
| 125     contributor2 = new MockCompletionContributor(suggestion2, null); | 122     contributor2 = new MockCompletionContributor(suggestion2, null); | 
| 126     manager.contributors = [contributor1, contributor2]; | 123     manager.contributors = [contributor1, contributor2]; | 
| 127     manager.newContributors = []; | 124     manager.newContributors = []; | 
| 128     int count = 0; | 125     int count = 0; | 
| 129     bool done = false; | 126     bool done = false; | 
| 130     AnalysisServer server = new AnalysisServerMock(searchEngine: searchEngine); |  | 
| 131     CompletionRequest completionRequest = | 127     CompletionRequest completionRequest = | 
| 132         new CompletionRequestImpl(server, context, source, 0); | 128         new CompletionRequestImpl(context, provider, searchEngine, source, 0); | 
| 133     manager.results(completionRequest).listen((CompletionResult r) { | 129     manager.results(completionRequest).listen((CompletionResult r) { | 
| 134       bool isLast = r is CompletionResultImpl ? r.isLast : true; | 130       bool isLast = r is CompletionResultImpl ? r.isLast : true; | 
| 135       switch (++count) { | 131       switch (++count) { | 
| 136         case 1: | 132         case 1: | 
| 137           contributor1.assertCalls(context, source, 0, searchEngine); | 133           contributor1.assertCalls(context, source, 0, searchEngine); | 
| 138           expect(contributor1.fastCount, equals(1)); | 134           expect(contributor1.fastCount, equals(1)); | 
| 139           expect(contributor1.fullCount, equals(0)); | 135           expect(contributor1.fullCount, equals(0)); | 
| 140           contributor2.assertCalls(context, source, 0, searchEngine); | 136           contributor2.assertCalls(context, source, 0, searchEngine); | 
| 141           expect(contributor2.fastCount, equals(1)); | 137           expect(contributor2.fastCount, equals(1)); | 
| 142           expect(contributor2.fullCount, equals(0)); | 138           expect(contributor2.fullCount, equals(0)); | 
| (...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 201   @override | 197   @override | 
| 202   Future<bool> computeFull(DartCompletionRequest request) { | 198   Future<bool> computeFull(DartCompletionRequest request) { | 
| 203     this.request = request; | 199     this.request = request; | 
| 204     fullCount++; | 200     fullCount++; | 
| 205     if (fullSuggestion != null) { | 201     if (fullSuggestion != null) { | 
| 206       request.addSuggestion(fullSuggestion); | 202       request.addSuggestion(fullSuggestion); | 
| 207     } | 203     } | 
| 208     return new Future.value(fullSuggestion != null); | 204     return new Future.value(fullSuggestion != null); | 
| 209   } | 205   } | 
| 210 } | 206 } | 
| OLD | NEW | 
|---|