Skip to content

Commit af898ec

Browse files
author
Kapil Borle
committed
Fix correction text when remove whatif/confirm
1 parent 4811c94 commit af898ec

1 file changed

Lines changed: 23 additions & 3 deletions

File tree

rules/UseSupportsShouldProcess.cs

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -297,22 +297,42 @@ private static CorrectionExtent GetCorrectionExtent(
297297
ParameterAst[] parameterAsts)
298298
{
299299
IScriptExtent paramExtent = parameterAsts[paramIndex].Extent;
300-
int endLineNumber, endColumnNumber;
300+
int startLineNumber, startColumnNumber, endLineNumber, endColumnNumber;
301+
302+
startLineNumber = paramExtent.StartLineNumber;
303+
startColumnNumber = paramExtent.StartColumnNumber;
301304
if (paramIndex < parameterAsts.Length - 1)
302305
{
306+
303307
endLineNumber = parameterAsts[paramIndex + 1].Extent.StartLineNumber;
304308
endColumnNumber = parameterAsts[paramIndex + 1].Extent.StartColumnNumber;
305309
}
306310
else
307311
{
312+
// if last item in the parameter list then need to remove the
313+
// trailing comma after the previous parameter.
314+
if (paramIndex > 0)
315+
{
316+
var lp = parameterAsts[paramIndex - 1];
317+
if (!lp.Name.VariablePath.UserPath.Equals(
318+
"whatif",
319+
StringComparison.OrdinalIgnoreCase)
320+
&& !lp.Name.VariablePath.UserPath.Equals(
321+
"confirm",
322+
StringComparison.OrdinalIgnoreCase))
323+
{
324+
startLineNumber = lp.Extent.EndLineNumber;
325+
startColumnNumber = lp.Extent.EndColumnNumber;
326+
}
327+
}
308328
endLineNumber = paramExtent.EndLineNumber;
309329
endColumnNumber = paramExtent.EndColumnNumber;
310330
}
311331

312332
return new CorrectionExtent(
313-
paramExtent.StartLineNumber,
333+
startLineNumber,
314334
endLineNumber,
315-
paramExtent.StartColumnNumber,
335+
startColumnNumber,
316336
endColumnNumber,
317337
"",
318338
paramExtent.File);

0 commit comments

Comments
 (0)