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

Side by Side Diff: pkg/analysis_server/test/src/plugin/result_converter_test.dart

Issue 2879273002: Make server use the common protocol classes (Closed)
Patch Set: Created 3 years, 7 months 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) 2017, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2017, 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 import 'package:analysis_server/protocol/protocol_generated.dart' as server; 5 import 'package:analysis_server/protocol/protocol_generated.dart' as server;
6 import 'package:analysis_server/src/plugin/result_converter.dart'; 6 import 'package:analysis_server/src/plugin/result_converter.dart';
7 import 'package:analysis_server/src/protocol/protocol_internal.dart' as server; 7 import 'package:analysis_server/src/protocol/protocol_internal.dart' as server;
8 import 'package:analyzer_plugin/protocol/protocol_common.dart' as plugin; 8 import 'package:analyzer_plugin/protocol/protocol_common.dart';
9 import 'package:analyzer_plugin/protocol/protocol_generated.dart' as plugin; 9 import 'package:analyzer_plugin/protocol/protocol_generated.dart' as plugin;
10 import 'package:test/test.dart'; 10 import 'package:test/test.dart';
11 import 'package:test_reflective_loader/test_reflective_loader.dart'; 11 import 'package:test_reflective_loader/test_reflective_loader.dart';
12 12
13 import 'protocol_test_utilities.dart'; 13 import 'protocol_test_utilities.dart';
14 14
15 main() { 15 main() {
16 defineReflectiveSuite(() { 16 defineReflectiveSuite(() {
17 defineReflectiveTests(ResultConverterTest); 17 defineReflectiveTests(ResultConverterTest);
18 }); 18 });
(...skipping 13 matching lines...) Expand all
32 'i', 32 'i',
33 'j', 33 'j',
34 'k', 34 'k',
35 'l', 35 'l',
36 'm', 36 'm',
37 'n' 37 'n'
38 ]; 38 ];
39 39
40 ResultConverter converter = new ResultConverter(); 40 ResultConverter converter = new ResultConverter();
41 41
42 void test_convertAnalysisError() {
43 plugin.AnalysisError initial = pluginAnalysisError(0, 0);
44 server.AnalysisError expected = serverAnalysisError(0, 0);
45 expect(converter.convertAnalysisError(initial), expected);
46 }
47
48 void test_convertAnalysisErrorFixes() { 42 void test_convertAnalysisErrorFixes() {
49 plugin.AnalysisErrorFixes initial = new plugin.AnalysisErrorFixes( 43 plugin.AnalysisErrorFixes initial = new plugin.AnalysisErrorFixes(
50 pluginAnalysisError(0, 0), 44 pluginAnalysisError(0, 0),
51 fixes: <plugin.PrioritizedSourceChange>[ 45 fixes: <plugin.PrioritizedSourceChange>[
52 new plugin.PrioritizedSourceChange(100, pluginSourceChange(4, 4)) 46 new plugin.PrioritizedSourceChange(100, pluginSourceChange(4, 4))
53 ]); 47 ]);
54 server.AnalysisErrorFixes expected = new server.AnalysisErrorFixes( 48 server.AnalysisErrorFixes expected = new server.AnalysisErrorFixes(
55 serverAnalysisError(0, 0), 49 serverAnalysisError(0, 0),
56 fixes: <server.SourceChange>[serverSourceChange(4, 4)]); 50 fixes: <SourceChange>[serverSourceChange(4, 4)]);
57 expect(converter.convertAnalysisErrorFixes(initial), expected); 51 expect(converter.convertAnalysisErrorFixes(initial), expected);
58 } 52 }
59 53
60 void test_convertAnalysisNavigationParams() { 54 void test_convertAnalysisNavigationParams() {
61 plugin.AnalysisNavigationParams initial = 55 plugin.AnalysisNavigationParams initial =
62 new plugin.AnalysisNavigationParams('a.dart', <plugin.NavigationRegion>[ 56 new plugin.AnalysisNavigationParams('a.dart', <NavigationRegion>[
63 new plugin.NavigationRegion(1, 2, <int>[3, 4]) 57 new NavigationRegion(1, 2, <int>[3, 4])
64 ], <plugin.NavigationTarget>[ 58 ], <NavigationTarget>[
65 new plugin.NavigationTarget(plugin.ElementKind.FIELD, 5, 6, 7, 8, 9) 59 new NavigationTarget(ElementKind.FIELD, 5, 6, 7, 8, 9)
66 ], <String>[ 60 ], <String>[
67 'a', 61 'a',
68 'b' 62 'b'
69 ]); 63 ]);
70 server.AnalysisNavigationParams expected = 64 server.AnalysisNavigationParams expected =
71 new server.AnalysisNavigationParams('a.dart', <server.NavigationRegion>[ 65 new server.AnalysisNavigationParams('a.dart', <NavigationRegion>[
72 new server.NavigationRegion(1, 2, <int>[3, 4]) 66 new NavigationRegion(1, 2, <int>[3, 4])
73 ], <server.NavigationTarget>[ 67 ], <NavigationTarget>[
74 new server.NavigationTarget(server.ElementKind.FIELD, 5, 6, 7, 8, 9) 68 new NavigationTarget(ElementKind.FIELD, 5, 6, 7, 8, 9)
75 ], <String>[ 69 ], <String>[
76 'a', 70 'a',
77 'b' 71 'b'
78 ]); 72 ]);
79 expect(converter.convertAnalysisNavigationParams(initial), expected); 73 expect(converter.convertAnalysisNavigationParams(initial), expected);
80 } 74 }
81 75
82 void test_convertCompletionSuggestion() {
83 plugin.CompletionSuggestion initial = new plugin.CompletionSuggestion(
84 plugin.CompletionSuggestionKind.IMPORT, 1, 'a', 2, 3, true, false,
85 docSummary: 'b',
86 docComplete: 'c',
87 declaringType: 'd',
88 element: pluginElement(4, 4),
89 returnType: 'i',
90 parameterNames: <String>['j', 'k'],
91 parameterTypes: <String>[],
92 requiredParameterCount: 9,
93 hasNamedParameters: true,
94 parameterName: 'l',
95 parameterType: 'm',
96 importUri: 'n');
97 server.CompletionSuggestion expected = new server.CompletionSuggestion(
98 server.CompletionSuggestionKind.IMPORT, 1, 'a', 2, 3, true, false,
99 docSummary: 'b',
100 docComplete: 'c',
101 declaringType: 'd',
102 element: serverElement(4, 4),
103 returnType: 'i',
104 parameterNames: <String>['j', 'k'],
105 parameterTypes: <String>[],
106 requiredParameterCount: 9,
107 hasNamedParameters: true,
108 parameterName: 'l',
109 parameterType: 'm',
110 importUri: 'n');
111 expect(converter.convertCompletionSuggestion(initial), expected);
112 }
113
114 void test_convertEditGetRefactoringResult_inlineMethod() { 76 void test_convertEditGetRefactoringResult_inlineMethod() {
115 plugin.EditGetRefactoringResult initial = 77 plugin.EditGetRefactoringResult initial =
116 new plugin.EditGetRefactoringResult( 78 new plugin.EditGetRefactoringResult(
117 <plugin.RefactoringProblem>[pluginRefactoringProblem(0, 0)], 79 <RefactoringProblem>[pluginRefactoringProblem(0, 0)],
118 <plugin.RefactoringProblem>[pluginRefactoringProblem(2, 4)], 80 <RefactoringProblem>[pluginRefactoringProblem(2, 4)],
119 <plugin.RefactoringProblem>[pluginRefactoringProblem(4, 8)], 81 <RefactoringProblem>[pluginRefactoringProblem(4, 8)],
120 feedback: 82 feedback:
121 new plugin.InlineMethodFeedback('a', true, className: 'b'), 83 new plugin.InlineMethodFeedback('a', true, className: 'b'),
122 change: pluginSourceChange(6, 12), 84 change: pluginSourceChange(6, 12),
123 potentialEdits: <String>['f']); 85 potentialEdits: <String>['f']);
124 server.EditGetRefactoringResult expected = 86 server.EditGetRefactoringResult expected =
125 new server.EditGetRefactoringResult( 87 new server.EditGetRefactoringResult(
126 <server.RefactoringProblem>[serverRefactoringProblem(0, 0)], 88 <RefactoringProblem>[serverRefactoringProblem(0, 0)],
127 <server.RefactoringProblem>[serverRefactoringProblem(2, 4)], 89 <RefactoringProblem>[serverRefactoringProblem(2, 4)],
128 <server.RefactoringProblem>[serverRefactoringProblem(4, 8)], 90 <RefactoringProblem>[serverRefactoringProblem(4, 8)],
129 feedback: 91 feedback:
130 new server.InlineMethodFeedback('a', true, className: 'b'), 92 new server.InlineMethodFeedback('a', true, className: 'b'),
131 change: serverSourceChange(6, 12), 93 change: serverSourceChange(6, 12),
132 potentialEdits: <String>['f']); 94 potentialEdits: <String>['f']);
133 expect( 95 expect(
134 converter.convertEditGetRefactoringResult( 96 converter.convertEditGetRefactoringResult(
135 plugin.RefactoringKind.INLINE_METHOD, initial), 97 RefactoringKind.INLINE_METHOD, initial),
136 expected); 98 expected);
137 } 99 }
138 100
139 void test_convertEditGetRefactoringResult_moveFile() { 101 void test_convertEditGetRefactoringResult_moveFile() {
140 plugin.EditGetRefactoringResult initial = 102 plugin.EditGetRefactoringResult initial =
141 new plugin.EditGetRefactoringResult( 103 new plugin.EditGetRefactoringResult(
142 <plugin.RefactoringProblem>[pluginRefactoringProblem(0, 0)], 104 <RefactoringProblem>[pluginRefactoringProblem(0, 0)],
143 <plugin.RefactoringProblem>[pluginRefactoringProblem(2, 4)], 105 <RefactoringProblem>[pluginRefactoringProblem(2, 4)],
144 <plugin.RefactoringProblem>[pluginRefactoringProblem(4, 8)], 106 <RefactoringProblem>[pluginRefactoringProblem(4, 8)],
145 feedback: new plugin.MoveFileFeedback(), 107 feedback: new plugin.MoveFileFeedback(),
146 change: pluginSourceChange(6, 12), 108 change: pluginSourceChange(6, 12),
147 potentialEdits: <String>['f']); 109 potentialEdits: <String>['f']);
148 server.EditGetRefactoringResult expected = 110 server.EditGetRefactoringResult expected =
149 new server.EditGetRefactoringResult( 111 new server.EditGetRefactoringResult(
150 <server.RefactoringProblem>[serverRefactoringProblem(0, 0)], 112 <RefactoringProblem>[serverRefactoringProblem(0, 0)],
151 <server.RefactoringProblem>[serverRefactoringProblem(2, 4)], 113 <RefactoringProblem>[serverRefactoringProblem(2, 4)],
152 <server.RefactoringProblem>[serverRefactoringProblem(4, 8)], 114 <RefactoringProblem>[serverRefactoringProblem(4, 8)],
153 change: serverSourceChange(6, 12), 115 change: serverSourceChange(6, 12),
154 potentialEdits: <String>['f']); 116 potentialEdits: <String>['f']);
155 expect( 117 expect(
156 converter.convertEditGetRefactoringResult( 118 converter.convertEditGetRefactoringResult(
157 plugin.RefactoringKind.MOVE_FILE, initial), 119 RefactoringKind.MOVE_FILE, initial),
158 expected); 120 expected);
159 } 121 }
160 122
161 void test_convertFoldingRegion() {
162 plugin.FoldingRegion initial = pluginFoldingRegion(1, 2);
163 server.FoldingRegion expected = serverFoldingRegion(1, 2);
164 expect(converter.convertFoldingRegion(initial), expected);
165 }
166
167 void test_convertHighlightRegion() {
168 plugin.HighlightRegion initial = pluginHighlightRegion(1, 2);
169 server.HighlightRegion expected = serverHighlightRegion(1, 2);
170 expect(converter.convertHighlightRegion(initial), expected);
171 }
172
173 void test_convertOccurrences() {
174 plugin.Occurrences initial = pluginOccurrences(1, 1);
175 server.Occurrences expected = serverOccurrences(1, 1);
176 expect(converter.convertOccurrences(initial), expected);
177 }
178
179 void test_convertOutline() {
180 plugin.Outline initial = new plugin.Outline(pluginElement(1, 1), 6, 7,
181 children: <plugin.Outline>[
182 new plugin.Outline(pluginElement(6, 8), 14, 15)
183 ]);
184 server.Outline expected = new server.Outline(serverElement(1, 1), 6, 7,
185 children: <server.Outline>[
186 new server.Outline(serverElement(6, 8), 14, 15)
187 ]);
188 expect(converter.convertOutline(initial), expected);
189 }
190
191 void test_convertPrioritizedSourceChange() { 123 void test_convertPrioritizedSourceChange() {
192 plugin.PrioritizedSourceChange initial = 124 plugin.PrioritizedSourceChange initial =
193 new plugin.PrioritizedSourceChange(100, pluginSourceChange(0, 0)); 125 new plugin.PrioritizedSourceChange(100, pluginSourceChange(0, 0));
194 server.SourceChange expected = serverSourceChange(0, 0); 126 SourceChange expected = serverSourceChange(0, 0);
195 expect(converter.convertPrioritizedSourceChange(initial), expected); 127 expect(converter.convertPrioritizedSourceChange(initial), expected);
196 } 128 }
197
198 void test_convertRefactoringFeedback_convertGetterToMethod() {
199 plugin.ConvertGetterToMethodFeedback initial =
200 new plugin.ConvertGetterToMethodFeedback();
201 expect(
202 converter.convertRefactoringFeedback(
203 plugin.RefactoringKind.CONVERT_GETTER_TO_METHOD, initial),
204 isNull);
205 }
206
207 void test_convertRefactoringFeedback_convertMethodToGetter() {
208 plugin.ConvertMethodToGetterFeedback initial =
209 new plugin.ConvertMethodToGetterFeedback();
210 expect(
211 converter.convertRefactoringFeedback(
212 plugin.RefactoringKind.CONVERT_METHOD_TO_GETTER, initial),
213 isNull);
214 }
215
216 void test_convertRefactoringFeedback_extractLocalVariable() {
217 plugin.ExtractLocalVariableFeedback initial =
218 new plugin.ExtractLocalVariableFeedback(
219 <String>['a', 'b'], <int>[1, 2], <int>[3],
220 coveringExpressionOffsets: <int>[4, 5],
221 coveringExpressionLengths: <int>[6]);
222 server.ExtractLocalVariableFeedback expected =
223 new server.ExtractLocalVariableFeedback(
224 <String>['a', 'b'], <int>[1, 2], <int>[3],
225 coveringExpressionOffsets: <int>[4, 5],
226 coveringExpressionLengths: <int>[6]);
227 expect(
228 converter.convertRefactoringFeedback(
229 plugin.RefactoringKind.EXTRACT_LOCAL_VARIABLE, initial),
230 expected);
231 }
232
233 void test_convertRefactoringFeedback_extractMethod() {
234 plugin.ExtractMethodFeedback initial = new plugin.ExtractMethodFeedback(
235 1,
236 2,
237 'a',
238 <String>['b', 'c'],
239 true,
240 <plugin.RefactoringMethodParameter>[
241 new plugin.RefactoringMethodParameter(
242 plugin.RefactoringMethodParameterKind.NAMED, 'd', 'e',
243 id: 'f', parameters: 'g')
244 ],
245 <int>[3, 4],
246 <int>[5, 6]);
247 server.ExtractMethodFeedback expected = new server.ExtractMethodFeedback(
248 1,
249 2,
250 'a',
251 <String>['b', 'c'],
252 true,
253 <server.RefactoringMethodParameter>[
254 new server.RefactoringMethodParameter(
255 server.RefactoringMethodParameterKind.NAMED, 'd', 'e',
256 id: 'f', parameters: 'g')
257 ],
258 <int>[3, 4],
259 <int>[5, 6]);
260 expect(
261 converter.convertRefactoringFeedback(
262 plugin.RefactoringKind.EXTRACT_METHOD, initial),
263 expected);
264 }
265
266 void test_convertRefactoringFeedback_inlineLocalVariable() {
267 plugin.InlineLocalVariableFeedback initial =
268 new plugin.InlineLocalVariableFeedback('a', 1);
269 server.InlineLocalVariableFeedback expected =
270 new server.InlineLocalVariableFeedback('a', 1);
271 expect(
272 converter.convertRefactoringFeedback(
273 plugin.RefactoringKind.INLINE_LOCAL_VARIABLE, initial),
274 expected);
275 }
276
277 void test_convertRefactoringFeedback_inlineMethod() {
278 plugin.InlineMethodFeedback initial =
279 new plugin.InlineMethodFeedback('a', true, className: 'b');
280 server.InlineMethodFeedback expected =
281 new server.InlineMethodFeedback('a', true, className: 'b');
282 expect(
283 converter.convertRefactoringFeedback(
284 plugin.RefactoringKind.INLINE_METHOD, initial),
285 expected);
286 }
287
288 void test_convertRefactoringFeedback_moveFile() {
289 plugin.MoveFileFeedback initial = new plugin.MoveFileFeedback();
290 expect(
291 converter.convertRefactoringFeedback(
292 plugin.RefactoringKind.MOVE_FILE, initial),
293 isNull);
294 }
295
296 void test_convertRefactoringFeedback_rename() {
297 plugin.RenameFeedback initial = new plugin.RenameFeedback(1, 2, 'a', 'b');
298 server.RenameFeedback expected = new server.RenameFeedback(1, 2, 'a', 'b');
299 expect(
300 converter.convertRefactoringFeedback(
301 plugin.RefactoringKind.RENAME, initial),
302 expected);
303 }
304
305 void test_convertRefactoringKind() {
306 Map<plugin.RefactoringKind, server.RefactoringKind> kindMap =
307 <plugin.RefactoringKind, server.RefactoringKind>{
308 plugin.RefactoringKind.CONVERT_GETTER_TO_METHOD:
309 server.RefactoringKind.CONVERT_GETTER_TO_METHOD,
310 plugin.RefactoringKind.CONVERT_METHOD_TO_GETTER:
311 server.RefactoringKind.CONVERT_METHOD_TO_GETTER,
312 plugin.RefactoringKind.EXTRACT_LOCAL_VARIABLE:
313 server.RefactoringKind.EXTRACT_LOCAL_VARIABLE,
314 plugin.RefactoringKind.EXTRACT_METHOD:
315 server.RefactoringKind.EXTRACT_METHOD,
316 plugin.RefactoringKind.INLINE_LOCAL_VARIABLE:
317 server.RefactoringKind.INLINE_LOCAL_VARIABLE,
318 plugin.RefactoringKind.INLINE_METHOD:
319 server.RefactoringKind.INLINE_METHOD,
320 plugin.RefactoringKind.MOVE_FILE: server.RefactoringKind.MOVE_FILE,
321 plugin.RefactoringKind.RENAME: server.RefactoringKind.RENAME,
322 plugin.RefactoringKind.SORT_MEMBERS: server.RefactoringKind.SORT_MEMBERS,
323 };
324 kindMap.forEach(
325 (plugin.RefactoringKind pluginKind, server.RefactoringKind serverKind) {
326 expect(converter.convertRefactoringKind(pluginKind), serverKind);
327 });
328 }
329
330 void test_convertSourceChange() {
331 plugin.SourceChange initial = pluginSourceChange(0, 0);
332 server.SourceChange expected = serverSourceChange(0, 0);
333 expect(converter.convertSourceChange(initial), expected);
334 }
335 } 129 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698