@@ -19,8 +19,44 @@ void main() {
1919 });
2020}
2121
22+ abstract class AbstractSourceCodeActionsTest extends AbstractCodeActionsTest {
23+ /// Wrapper around [checkCodeActionAvailable] for Source actions where
24+ /// position/range is irrelevant (so uses [startOfDocPos] ).
25+ Future <void > checkSourceCodeActionAvailable (
26+ Uri uri,
27+ String command,
28+ String title, {
29+ bool asCodeActionLiteral = false ,
30+ bool asCommand = false ,
31+ }) async {
32+ return checkCodeActionAvailable (
33+ uri,
34+ command,
35+ title,
36+ position: startOfDocPos,
37+ asCodeActionLiteral: asCodeActionLiteral,
38+ asCommand: asCommand,
39+ );
40+ }
41+
42+ /// Wrapper around [getCodeActions] for Source actions where position/range is
43+ /// irrelevant (so uses [startOfDocPos] ).
44+ Future <List <Either2 <Command , CodeAction >>> getSourceCodeActions (
45+ String fileUri, {
46+ List <CodeActionKind >? kinds,
47+ CodeActionTriggerKind ? triggerKind,
48+ }) {
49+ return getCodeActions (
50+ fileUri,
51+ position: startOfDocPos,
52+ kinds: kinds,
53+ triggerKind: triggerKind,
54+ );
55+ }
56+ }
57+
2258@reflectiveTest
23- class FixAllSourceCodeActionsTest extends AbstractCodeActionsTest {
59+ class FixAllSourceCodeActionsTest extends AbstractSourceCodeActionsTest {
2460 Future <void > test_appliesCorrectEdits () async {
2561 const analysisOptionsContent = '''
2662linter:
@@ -45,15 +81,16 @@ linter:
4581 workspaceCapabilities:
4682 withApplyEditSupport (emptyWorkspaceClientCapabilities));
4783
48- final codeActions = await getCodeActions (mainFileUri.toString ());
84+ final codeActions = await getSourceCodeActions (mainFileUri.toString ());
4985 final codeAction = findCommand (codeActions, Commands .fixAll)! ;
5086
5187 await verifyCodeActionEdits (codeAction, content, expectedContent);
5288 }
5389}
5490
5591@reflectiveTest
56- class OrganizeImportsSourceCodeActionsTest extends AbstractCodeActionsTest {
92+ class OrganizeImportsSourceCodeActionsTest
93+ extends AbstractSourceCodeActionsTest {
5794 Future <void > test_appliesCorrectEdits_withDocumentChangesSupport () async {
5895 const content = '''
5996import 'dart:math';
@@ -75,7 +112,7 @@ int minified(int x, int y) => min(x, y);
75112 workspaceCapabilities: withApplyEditSupport (
76113 withDocumentChangesSupport (emptyWorkspaceClientCapabilities)));
77114
78- final codeActions = await getCodeActions (mainFileUri.toString ());
115+ final codeActions = await getSourceCodeActions (mainFileUri.toString ());
79116 final codeAction = findCommand (codeActions, Commands .organizeImports)! ;
80117
81118 await verifyCodeActionEdits (codeAction, content, expectedContent,
@@ -103,7 +140,7 @@ int minified(int x, int y) => min(x, y);
103140 workspaceCapabilities:
104141 withApplyEditSupport (emptyWorkspaceClientCapabilities));
105142
106- final codeActions = await getCodeActions (mainFileUri.toString ());
143+ final codeActions = await getSourceCodeActions (mainFileUri.toString ());
107144 final codeAction = findCommand (codeActions, Commands .organizeImports)! ;
108145
109146 await verifyCodeActionEdits (codeAction, content, expectedContent);
@@ -117,7 +154,7 @@ int minified(int x, int y) => min(x, y);
117154 workspaceCapabilities:
118155 withApplyEditSupport (emptyWorkspaceClientCapabilities));
119156
120- await checkCodeActionAvailable (
157+ await checkSourceCodeActionAvailable (
121158 mainFileUri,
122159 Commands .organizeImports,
123160 'Organize Imports' ,
@@ -131,7 +168,7 @@ int minified(int x, int y) => min(x, y);
131168 workspaceCapabilities:
132169 withApplyEditSupport (emptyWorkspaceClientCapabilities));
133170
134- await checkCodeActionAvailable (
171+ await checkSourceCodeActionAvailable (
135172 mainFileUri,
136173 Commands .organizeImports,
137174 'Organize Imports' ,
@@ -146,7 +183,7 @@ int minified(int x, int y) => min(x, y);
146183 workspaceCapabilities:
147184 withApplyEditSupport (emptyWorkspaceClientCapabilities));
148185
149- final codeActions = await getCodeActions (
186+ final codeActions = await getSourceCodeActions (
150187 mainFileUri.toString (),
151188 triggerKind: CodeActionTriggerKind .Automatic ,
152189 );
@@ -169,7 +206,7 @@ int minified(int x, int y) => min(x, y);
169206 workspaceCapabilities:
170207 withApplyEditSupport (emptyWorkspaceClientCapabilities));
171208
172- final codeActions = await getCodeActions (mainFileUri.toString ());
209+ final codeActions = await getSourceCodeActions (mainFileUri.toString ());
173210 final codeAction = findCommand (codeActions, Commands .organizeImports)! ;
174211
175212 final command = codeAction.map (
@@ -189,7 +226,7 @@ int minified(int x, int y) => min(x, y);
189226 workspaceCapabilities:
190227 withApplyEditSupport (emptyWorkspaceClientCapabilities));
191228
192- ofKind (CodeActionKind kind) => getCodeActions (
229+ ofKind (CodeActionKind kind) => getSourceCodeActions (
193230 mainFileUri.toString (),
194231 kinds: [kind],
195232 );
@@ -215,7 +252,7 @@ int minified(int x, int y) => min(x, y);
215252 workspaceCapabilities:
216253 withApplyEditSupport (emptyWorkspaceClientCapabilities));
217254
218- final codeActions = await getCodeActions (mainFileUri.toString ());
255+ final codeActions = await getSourceCodeActions (mainFileUri.toString ());
219256 final codeAction = findCommand (codeActions, Commands .organizeImports)! ;
220257
221258 final command = codeAction.map (
@@ -238,7 +275,7 @@ int minified(int x, int y) => min(x, y);
238275 workspaceCapabilities:
239276 withApplyEditSupport (emptyWorkspaceClientCapabilities));
240277
241- final codeActions = await getCodeActions (mainFileUri.toString ());
278+ final codeActions = await getSourceCodeActions (mainFileUri.toString ());
242279 final codeAction = findCommand (codeActions, Commands .organizeImports);
243280 expect (codeAction, isNull);
244281 }
@@ -247,14 +284,14 @@ int minified(int x, int y) => min(x, y);
247284 newFile (mainFilePath, '' );
248285 await initialize ();
249286
250- final codeActions = await getCodeActions (mainFileUri.toString ());
287+ final codeActions = await getSourceCodeActions (mainFileUri.toString ());
251288 final codeAction = findCommand (codeActions, Commands .organizeImports);
252289 expect (codeAction, isNull);
253290 }
254291}
255292
256293@reflectiveTest
257- class SortMembersSourceCodeActionsTest extends AbstractCodeActionsTest {
294+ class SortMembersSourceCodeActionsTest extends AbstractSourceCodeActionsTest {
258295 Future <void > test_appliesCorrectEdits_withDocumentChangesSupport () async {
259296 const content = '''
260297 String b;
@@ -269,7 +306,7 @@ class SortMembersSourceCodeActionsTest extends AbstractCodeActionsTest {
269306 workspaceCapabilities: withApplyEditSupport (
270307 withDocumentChangesSupport (emptyWorkspaceClientCapabilities)));
271308
272- final codeActions = await getCodeActions (mainFileUri.toString ());
309+ final codeActions = await getSourceCodeActions (mainFileUri.toString ());
273310 final codeAction = findCommand (codeActions, Commands .sortMembers)! ;
274311
275312 await verifyCodeActionEdits (codeAction, content, expectedContent,
@@ -290,7 +327,7 @@ class SortMembersSourceCodeActionsTest extends AbstractCodeActionsTest {
290327 workspaceCapabilities:
291328 withApplyEditSupport (emptyWorkspaceClientCapabilities));
292329
293- final codeActions = await getCodeActions (mainFileUri.toString ());
330+ final codeActions = await getSourceCodeActions (mainFileUri.toString ());
294331 final codeAction = findCommand (codeActions, Commands .sortMembers)! ;
295332
296333 await verifyCodeActionEdits (codeAction, content, expectedContent);
@@ -304,7 +341,7 @@ class SortMembersSourceCodeActionsTest extends AbstractCodeActionsTest {
304341 workspaceCapabilities:
305342 withApplyEditSupport (emptyWorkspaceClientCapabilities));
306343
307- await checkCodeActionAvailable (
344+ await checkSourceCodeActionAvailable (
308345 mainFileUri,
309346 Commands .sortMembers,
310347 'Sort Members' ,
@@ -318,7 +355,7 @@ class SortMembersSourceCodeActionsTest extends AbstractCodeActionsTest {
318355 workspaceCapabilities:
319356 withApplyEditSupport (emptyWorkspaceClientCapabilities));
320357
321- await checkCodeActionAvailable (
358+ await checkSourceCodeActionAvailable (
322359 mainFileUri,
323360 Commands .sortMembers,
324361 'Sort Members' ,
@@ -336,7 +373,7 @@ class SortMembersSourceCodeActionsTest extends AbstractCodeActionsTest {
336373 workspaceCapabilities:
337374 withApplyEditSupport (emptyWorkspaceClientCapabilities));
338375
339- final codeActions = await getCodeActions (mainFileUri.toString ());
376+ final codeActions = await getSourceCodeActions (mainFileUri.toString ());
340377 final codeAction = findCommand (codeActions, Commands .sortMembers)! ;
341378
342379 final command = codeAction.map (
@@ -369,7 +406,7 @@ class SortMembersSourceCodeActionsTest extends AbstractCodeActionsTest {
369406 workspaceCapabilities:
370407 withApplyEditSupport (emptyWorkspaceClientCapabilities));
371408
372- final codeActions = await getCodeActions (
409+ final codeActions = await getSourceCodeActions (
373410 mainFileUri.toString (),
374411 triggerKind: CodeActionTriggerKind .Automatic ,
375412 );
@@ -392,7 +429,7 @@ class SortMembersSourceCodeActionsTest extends AbstractCodeActionsTest {
392429 workspaceCapabilities:
393430 withApplyEditSupport (emptyWorkspaceClientCapabilities));
394431
395- final codeActions = await getCodeActions (mainFileUri.toString ());
432+ final codeActions = await getSourceCodeActions (mainFileUri.toString ());
396433 final codeAction = findCommand (codeActions, Commands .sortMembers)! ;
397434
398435 final command = codeAction.map (
@@ -414,8 +451,7 @@ class SortMembersSourceCodeActionsTest extends AbstractCodeActionsTest {
414451 workspaceCapabilities:
415452 withApplyEditSupport (emptyWorkspaceClientCapabilities));
416453
417- final codeActions =
418- await getCodeActions (pubspecFileUri.toString (), range: startOfDocRange);
454+ final codeActions = await getSourceCodeActions (pubspecFileUri.toString ());
419455 expect (codeActions, isEmpty);
420456 }
421457
@@ -427,7 +463,7 @@ class SortMembersSourceCodeActionsTest extends AbstractCodeActionsTest {
427463 workspaceCapabilities:
428464 withApplyEditSupport (emptyWorkspaceClientCapabilities));
429465
430- final codeActions = await getCodeActions (mainFileUri.toString ());
466+ final codeActions = await getSourceCodeActions (mainFileUri.toString ());
431467 final codeAction = findCommand (codeActions, Commands .sortMembers);
432468 expect (codeAction, isNull);
433469 }
@@ -436,7 +472,7 @@ class SortMembersSourceCodeActionsTest extends AbstractCodeActionsTest {
436472 newFile (mainFilePath, '' );
437473 await initialize ();
438474
439- final codeActions = await getCodeActions (mainFileUri.toString ());
475+ final codeActions = await getSourceCodeActions (mainFileUri.toString ());
440476 final codeAction = findCommand (codeActions, Commands .sortMembers);
441477 expect (codeAction, isNull);
442478 }
0 commit comments