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/completion/completion_core.dart' | 9 import 'package:analysis_server/completion/completion_core.dart' |
10 show CompletionRequest; | 10 show CompletionRequest, CompletionResult; |
11 import 'package:analysis_server/src/analysis_server.dart'; | 11 import 'package:analysis_server/src/analysis_server.dart'; |
12 import 'package:analysis_server/src/protocol.dart'; | 12 import 'package:analysis_server/src/protocol.dart'; |
13 import 'package:analysis_server/src/services/completion/completion_manager.dart'
; | 13 import 'package:analysis_server/src/services/completion/completion_manager.dart'
; |
14 import 'package:analysis_server/src/services/completion/dart_completion_manager.
dart'; | 14 import 'package:analysis_server/src/services/completion/dart_completion_manager.
dart'; |
15 import 'package:analysis_server/src/services/index/index.dart'; | 15 import 'package:analysis_server/src/services/index/index.dart'; |
16 import 'package:analysis_server/src/services/index/local_memory_index.dart'; | 16 import 'package:analysis_server/src/services/index/local_memory_index.dart'; |
17 import 'package:analysis_server/src/services/search/search_engine.dart'; | 17 import 'package:analysis_server/src/services/search/search_engine.dart'; |
18 import 'package:analysis_server/src/services/search/search_engine_internal.dart'
; | 18 import 'package:analysis_server/src/services/search/search_engine_internal.dart'
; |
19 import 'package:analyzer/src/generated/engine.dart'; | 19 import 'package:analyzer/src/generated/engine.dart'; |
20 import 'package:analyzer/src/generated/source.dart'; | 20 import 'package:analyzer/src/generated/source.dart'; |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
86 int count = 0; | 86 int count = 0; |
87 bool done = false; | 87 bool done = false; |
88 AnalysisServer server = new AnalysisServerMock(searchEngine: searchEngine); | 88 AnalysisServer server = new AnalysisServerMock(searchEngine: searchEngine); |
89 CompletionRequest completionRequest = | 89 CompletionRequest completionRequest = |
90 new CompletionRequestImpl(server, context, source, 0); | 90 new CompletionRequestImpl(server, context, source, 0); |
91 manager.results(completionRequest).listen((CompletionResult r) { | 91 manager.results(completionRequest).listen((CompletionResult r) { |
92 switch (++count) { | 92 switch (++count) { |
93 case 1: | 93 case 1: |
94 contributor1.assertCalls(context, source, 0, searchEngine); | 94 contributor1.assertCalls(context, source, 0, searchEngine); |
95 contributor2.assertCalls(context, source, 0, searchEngine); | 95 contributor2.assertCalls(context, source, 0, searchEngine); |
96 expect(r.last, isFalse); | 96 expect(r.isLast, isFalse); |
97 expect(r.suggestions, hasLength(1)); | 97 expect(r.suggestions, hasLength(1)); |
98 expect(r.suggestions, contains(suggestion1)); | 98 expect(r.suggestions, contains(suggestion1)); |
99 resolveLibrary(); | 99 resolveLibrary(); |
100 break; | 100 break; |
101 case 2: | 101 case 2: |
102 contributor1.assertFull(0); | 102 contributor1.assertFull(0); |
103 contributor2.assertFull(1); | 103 contributor2.assertFull(1); |
104 expect(r.last, isTrue); | 104 expect(r.isLast, isTrue); |
105 expect(r.suggestions, hasLength(2)); | 105 expect(r.suggestions, hasLength(2)); |
106 expect(r.suggestions, contains(suggestion1)); | 106 expect(r.suggestions, contains(suggestion1)); |
107 expect(r.suggestions, contains(suggestion2)); | 107 expect(r.suggestions, contains(suggestion2)); |
108 break; | 108 break; |
109 default: | 109 default: |
110 fail('unexpected'); | 110 fail('unexpected'); |
111 } | 111 } |
112 }, onDone: () { | 112 }, onDone: () { |
113 done = true; | 113 done = true; |
114 expect(count, equals(2)); | 114 expect(count, equals(2)); |
(...skipping 10 matching lines...) Expand all Loading... |
125 int count = 0; | 125 int count = 0; |
126 bool done = false; | 126 bool done = false; |
127 AnalysisServer server = new AnalysisServerMock(searchEngine: searchEngine); | 127 AnalysisServer server = new AnalysisServerMock(searchEngine: searchEngine); |
128 CompletionRequest completionRequest = | 128 CompletionRequest completionRequest = |
129 new CompletionRequestImpl(server, context, source, 0); | 129 new CompletionRequestImpl(server, context, source, 0); |
130 manager.results(completionRequest).listen((CompletionResult r) { | 130 manager.results(completionRequest).listen((CompletionResult r) { |
131 switch (++count) { | 131 switch (++count) { |
132 case 1: | 132 case 1: |
133 contributor1.assertCalls(context, source, 0, searchEngine); | 133 contributor1.assertCalls(context, source, 0, searchEngine); |
134 contributor2.assertCalls(context, source, 0, searchEngine); | 134 contributor2.assertCalls(context, source, 0, searchEngine); |
135 expect(r.last, isTrue); | 135 expect(r.isLast, isTrue); |
136 expect(r.suggestions, hasLength(2)); | 136 expect(r.suggestions, hasLength(2)); |
137 expect(r.suggestions, contains(suggestion1)); | 137 expect(r.suggestions, contains(suggestion1)); |
138 expect(r.suggestions, contains(suggestion2)); | 138 expect(r.suggestions, contains(suggestion2)); |
139 break; | 139 break; |
140 default: | 140 default: |
141 fail('unexpected'); | 141 fail('unexpected'); |
142 } | 142 } |
143 }, onDone: () { | 143 }, onDone: () { |
144 done = true; | 144 done = true; |
145 expect(count, equals(1)); | 145 expect(count, equals(1)); |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
195 @override | 195 @override |
196 Future<bool> computeFull(DartCompletionRequest request) { | 196 Future<bool> computeFull(DartCompletionRequest request) { |
197 this.request = request; | 197 this.request = request; |
198 fullCount++; | 198 fullCount++; |
199 if (fullSuggestion != null) { | 199 if (fullSuggestion != null) { |
200 request.addSuggestion(fullSuggestion); | 200 request.addSuggestion(fullSuggestion); |
201 } | 201 } |
202 return new Future.value(fullSuggestion != null); | 202 return new Future.value(fullSuggestion != null); |
203 } | 203 } |
204 } | 204 } |
OLD | NEW |