npm-groovy-lint 14.6.0 → 14.6.1-beta202408252305.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/README.md +13 -0
  2. package/lib/codenarc-caller.js +54 -53
  3. package/lib/codenarc-factory.js +41 -50
  4. package/lib/config.js +22 -19
  5. package/lib/filter.js +8 -15
  6. package/lib/groovy-lint-fix.js +32 -34
  7. package/lib/groovy-lint-rules.js +12 -12
  8. package/lib/groovy-lint.js +40 -41
  9. package/lib/index.js +3 -3
  10. package/lib/java/{CodeNarc-3.4.0-alpha+3346775f.jar → CodeNarc-3.5.0.jar} +0 -0
  11. package/lib/java/CodeNarcServer.jar +0 -0
  12. package/lib/options.js +45 -54
  13. package/lib/output.js +23 -23
  14. package/lib/rules/AssignmentInConditional.js +7 -7
  15. package/lib/rules/BlankLineBeforePackage.js +11 -11
  16. package/lib/rules/BlockEndsWithBlankLine.js +6 -6
  17. package/lib/rules/BlockStartsWithBlankLine.js +6 -6
  18. package/lib/rules/BracesForClass.js +8 -8
  19. package/lib/rules/BracesForForLoop.js +9 -9
  20. package/lib/rules/BracesForIfElse.js +9 -9
  21. package/lib/rules/BracesForMethod.js +11 -11
  22. package/lib/rules/BracesForTryCatchFinally.js +7 -7
  23. package/lib/rules/CatchException.js +4 -4
  24. package/lib/rules/ClassEndsWithBlankLine.js +6 -6
  25. package/lib/rules/ClassStartsWithBlankLine.js +6 -6
  26. package/lib/rules/ClosingBraceNotAlone.js +8 -8
  27. package/lib/rules/ConsecutiveBlankLines.js +7 -7
  28. package/lib/rules/DuplicateImport.js +6 -6
  29. package/lib/rules/DuplicateNumberLiteral.js +6 -6
  30. package/lib/rules/DuplicateStringLiteral.js +6 -6
  31. package/lib/rules/ElseBlockBraces.js +10 -10
  32. package/lib/rules/ExplicitArrayListInstantiation.js +7 -7
  33. package/lib/rules/ExplicitLinkedListInstantiation.js +7 -7
  34. package/lib/rules/FileEndsWithoutNewline.js +7 -7
  35. package/lib/rules/GStringExpressionWithinString.js +7 -7
  36. package/lib/rules/IfStatementBraces.js +10 -10
  37. package/lib/rules/Indentation.js +14 -14
  38. package/lib/rules/IndentationClosingBraces.js +8 -8
  39. package/lib/rules/IndentationComments.js +6 -6
  40. package/lib/rules/InsecureRandom.js +14 -14
  41. package/lib/rules/JavaIoPackageAccess.js +6 -6
  42. package/lib/rules/MethodCount.js +6 -6
  43. package/lib/rules/MethodParameterTypeRequired.js +6 -6
  44. package/lib/rules/MethodReturnTypeRequired.js +6 -6
  45. package/lib/rules/MisorderedStaticImports.js +14 -14
  46. package/lib/rules/MissingBlankLineAfterImports.js +6 -6
  47. package/lib/rules/MissingBlankLineAfterPackage.js +6 -6
  48. package/lib/rules/NoDef.js +4 -4
  49. package/lib/rules/NoJavaUtilDate.js +4 -4
  50. package/lib/rules/NoTabCharacter.js +7 -7
  51. package/lib/rules/SimpleDateFormatMissingLocale.js +4 -4
  52. package/lib/rules/SpaceAfterCatch.js +7 -7
  53. package/lib/rules/SpaceAfterComma.js +9 -9
  54. package/lib/rules/SpaceAfterFor.js +8 -8
  55. package/lib/rules/SpaceAfterIf.js +10 -10
  56. package/lib/rules/SpaceAfterMethodCallName.js +7 -7
  57. package/lib/rules/SpaceAfterOpeningBrace.js +9 -9
  58. package/lib/rules/SpaceAfterSemicolon.js +8 -8
  59. package/lib/rules/SpaceAfterSwitch.js +8 -8
  60. package/lib/rules/SpaceAfterWhile.js +7 -7
  61. package/lib/rules/SpaceAroundOperator.js +14 -14
  62. package/lib/rules/SpaceBeforeClosingBrace.js +8 -8
  63. package/lib/rules/SpaceBeforeOpeningBrace.js +9 -9
  64. package/lib/rules/SpaceInsideParentheses.js +17 -17
  65. package/lib/rules/SystemExit.js +4 -4
  66. package/lib/rules/TrailingWhitespace.js +8 -8
  67. package/lib/rules/UnnecessaryDefInFieldDeclaration.js +8 -8
  68. package/lib/rules/UnnecessaryDefInMethodDeclaration.js +7 -7
  69. package/lib/rules/UnnecessaryDefInVariableDeclaration.js +9 -9
  70. package/lib/rules/UnnecessaryDotClass.js +7 -7
  71. package/lib/rules/UnnecessaryFinalOnPrivateMethod.js +7 -7
  72. package/lib/rules/UnnecessaryGString.js +14 -14
  73. package/lib/rules/UnnecessaryGroovyImport.js +6 -6
  74. package/lib/rules/UnnecessaryPackageReference.js +9 -9
  75. package/lib/rules/UnnecessaryParenthesesForMethodCallWithClosure.js +9 -9
  76. package/lib/rules/UnnecessaryPublicModifier.js +4 -4
  77. package/lib/rules/UnnecessarySemicolon.js +10 -13
  78. package/lib/rules/UnnecessaryToString.js +8 -8
  79. package/lib/rules/UnusedImport.js +10 -10
  80. package/lib/rules/UnusedMethodParameter.js +6 -6
  81. package/lib/rules/UnusedVariable.js +6 -6
  82. package/lib/rules/VariableName.js +11 -11
  83. package/lib/rules/VariableTypeRequired.js +11 -11
  84. package/lib/utils.js +62 -43
  85. package/package.json +22 -19
@@ -1,6 +1,6 @@
1
1
  // Braces for for loop
2
2
 
3
- const { getVariable, moveOpeningBracket, findRangeBetweenStrings } = require("../utils");
3
+ import { getVariable, moveOpeningBracket, findRangeBetweenStrings } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  scope: "file",
@@ -9,7 +9,7 @@ const rule = {
9
9
  type: "function",
10
10
  func: (_errLine, errItem, _evaluatedVars, allLines) => {
11
11
  return findRangeBetweenStrings(allLines, errItem, "for", "{");
12
- }
12
+ },
13
13
  },
14
14
  fix: {
15
15
  label: "Move opening brace on the same line",
@@ -20,7 +20,7 @@ const rule = {
20
20
  return moveOpeningBracket(allLines, variables);
21
21
  }
22
22
  return allLines;
23
- }
23
+ },
24
24
  },
25
25
  tests: [
26
26
  {
@@ -34,7 +34,7 @@ for (int i = 0; i < toto.length ; i++)
34
34
  for (int i = 0; i < toto.length ; i++) {
35
35
  def a = 1
36
36
  }
37
- `
37
+ `,
38
38
  },
39
39
  {
40
40
  sourceBefore: `
@@ -46,7 +46,7 @@ for (int i = 0; i < toto.length ; i++)
46
46
  for (int i = 0; i < toto.length ; i++) {
47
47
  def a = 1
48
48
  }
49
- `
49
+ `,
50
50
  },
51
51
  {
52
52
  sourceBefore: `
@@ -58,9 +58,9 @@ for (int i = 0; i < toto.length ; i++) {
58
58
  for (int i = 0; i < toto.length ; i++) {
59
59
  def a = 1
60
60
  }
61
- `
62
- }
63
- ]
61
+ `,
62
+ },
63
+ ],
64
64
  };
65
65
 
66
- module.exports = { rule };
66
+ export { rule };
@@ -1,6 +1,6 @@
1
1
  // Braces for if else
2
2
 
3
- const { moveOpeningBracket, findRangeBetweenStrings } = require("../utils");
3
+ import { moveOpeningBracket, findRangeBetweenStrings } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  scope: "file",
@@ -9,14 +9,14 @@ const rule = {
9
9
  type: "function",
10
10
  func: (_errLine, errItem, _evaluatedVars, allLines) => {
11
11
  return findRangeBetweenStrings(allLines, errItem, "if", "{");
12
- }
12
+ },
13
13
  },
14
14
  fix: {
15
15
  label: "Move opening brace on the same line",
16
16
  type: "function",
17
17
  func: (allLines, variables) => {
18
18
  return moveOpeningBracket(allLines, variables);
19
- }
19
+ },
20
20
  },
21
21
  tests: [
22
22
  {
@@ -30,7 +30,7 @@ if (true)
30
30
  if (true) {
31
31
  def a = 1
32
32
  }
33
- `
33
+ `,
34
34
  },
35
35
  {
36
36
  sourceBefore: `
@@ -42,7 +42,7 @@ if (true)
42
42
  if (true) {
43
43
  def a = 1
44
44
  }
45
- `
45
+ `,
46
46
  },
47
47
  {
48
48
  sourceBefore: `
@@ -59,9 +59,9 @@ if (true &&
59
59
  true ) {
60
60
  def a = 1
61
61
  }
62
- `
63
- }
64
- ]
62
+ `,
63
+ },
64
+ ],
65
65
  };
66
66
 
67
- module.exports = { rule };
67
+ export { rule };
@@ -1,6 +1,6 @@
1
1
  // Braces for method
2
2
 
3
- const { moveOpeningBracket, findRangeBetweenStrings, getVariable } = require("../utils");
3
+ import { moveOpeningBracket, findRangeBetweenStrings, getVariable } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  scope: "file",
@@ -8,22 +8,22 @@ const rule = {
8
8
  variables: [
9
9
  {
10
10
  name: "METHOD_NAME",
11
- regex: /Opening brace for the method (.*) should start on the same line/
12
- }
11
+ regex: /Opening brace for the method (.*) should start on the same line/,
12
+ },
13
13
  ],
14
14
  range: {
15
15
  type: "function",
16
16
  func: (_errLine, errItem, evaluatedVars, allLines) => {
17
17
  const methodName = getVariable(evaluatedVars, "METHOD_NAME", { mandatory: true });
18
18
  return findRangeBetweenStrings(allLines, errItem, methodName, "{");
19
- }
19
+ },
20
20
  },
21
21
  fix: {
22
22
  label: "Move opening brace on the same line",
23
23
  type: "function",
24
24
  func: (allLines, variables) => {
25
25
  return moveOpeningBracket(allLines, variables);
26
- }
26
+ },
27
27
  },
28
28
  tests: [
29
29
  {
@@ -37,7 +37,7 @@ def someMethodName (String toto)
37
37
  def someMethodName (String toto) {
38
38
  def a = 1
39
39
  }
40
- `
40
+ `,
41
41
  },
42
42
  {
43
43
  sourceBefore: `
@@ -49,7 +49,7 @@ def someMethodName (String toto)
49
49
  def someMethodName (String toto) {
50
50
  def a = 1
51
51
  }
52
- `
52
+ `,
53
53
  },
54
54
  {
55
55
  sourceBefore: `
@@ -84,7 +84,7 @@ class VersionHandler implements Serializable {
84
84
  }
85
85
 
86
86
  }
87
- `
87
+ `,
88
88
  } /*
89
89
  NV: Disable fix while not detected by CodeNarc
90
90
  ,
@@ -104,8 +104,8 @@ def someMethodName (String toto,
104
104
  def a = 1
105
105
  }
106
106
  `
107
- } */
108
- ]
107
+ } */,
108
+ ],
109
109
  };
110
110
 
111
- module.exports = { rule };
111
+ export { rule };
@@ -1,6 +1,6 @@
1
1
  // Braces for try catch finally
2
2
 
3
- const { moveOpeningBracket, findRangeBetweenStrings } = require("../utils");
3
+ import { moveOpeningBracket, findRangeBetweenStrings } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  scope: "file",
@@ -9,14 +9,14 @@ const rule = {
9
9
  type: "function",
10
10
  func: (_errLine, errItem, _evaluatedVars, allLines) => {
11
11
  return findRangeBetweenStrings(allLines, errItem, "try", "{");
12
- }
12
+ },
13
13
  },
14
14
  fix: {
15
15
  label: "Move opening brace on the same line",
16
16
  type: "function",
17
17
  func: (allLines, variables) => {
18
18
  return moveOpeningBracket(allLines, variables);
19
- }
19
+ },
20
20
  },
21
21
  tests: [
22
22
  {
@@ -38,9 +38,9 @@ try {
38
38
  } finally {
39
39
  def c = 6
40
40
  }
41
- `
42
- }
43
- ]
41
+ `,
42
+ },
43
+ ],
44
44
  };
45
45
 
46
- module.exports = { rule };
46
+ export { rule };
@@ -1,13 +1,13 @@
1
1
  // Exception type must not be used
2
- const { getStringRange } = require("../utils");
2
+ import { getStringRange } from "../utils.js";
3
3
 
4
4
  const rule = {
5
5
  range: {
6
6
  type: "function",
7
7
  func: (errLine, errItem) => {
8
8
  return getStringRange(errLine, "Exception", errItem);
9
- }
10
- }
9
+ },
10
+ },
11
11
  };
12
12
 
13
- module.exports = { rule };
13
+ export { rule };
@@ -1,6 +1,6 @@
1
1
  // Unused import
2
2
 
3
- const { getVariable } = require("../utils");
3
+ import { getVariable } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  scope: "file",
@@ -14,7 +14,7 @@ const rule = {
14
14
  allLines.splice(lineNumber, 0, "");
15
15
  }
16
16
  return allLines;
17
- }
17
+ },
18
18
  },
19
19
 
20
20
  tests: [
@@ -37,9 +37,9 @@ class NullResultsProcessor implements ResultsProcessor {
37
37
  }
38
38
 
39
39
  }
40
- `
41
- }
42
- ]
40
+ `,
41
+ },
42
+ ],
43
43
  };
44
44
 
45
- module.exports = { rule };
45
+ export { rule };
@@ -1,6 +1,6 @@
1
1
  // Unused import
2
2
 
3
- const { getVariable } = require("../utils");
3
+ import { getVariable } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  scope: "file",
@@ -14,7 +14,7 @@ const rule = {
14
14
  allLines.splice(lineNumber, 0, "");
15
15
  }
16
16
  return allLines;
17
- }
17
+ },
18
18
  },
19
19
 
20
20
  tests: [
@@ -37,9 +37,9 @@ class NullResultsProcessor implements ResultsProcessor {
37
37
  }
38
38
 
39
39
  }
40
- `
41
- }
42
- ]
40
+ `,
41
+ },
42
+ ],
43
43
  };
44
44
 
45
- module.exports = { rule };
45
+ export { rule };
@@ -8,13 +8,13 @@ const rule = {
8
8
  const closingBracePos = errLine.lastIndexOf("}");
9
9
  return {
10
10
  start: { line: errItem.line, character: closingBracePos },
11
- end: { line: errItem.line, character: closingBracePos + 1 }
11
+ end: { line: errItem.line, character: closingBracePos + 1 },
12
12
  };
13
- }
13
+ },
14
14
  },
15
15
  fix: {
16
16
  type: "function",
17
- func: allLines => {
17
+ func: (allLines) => {
18
18
  const newFileLines = [];
19
19
  let prevLine = "";
20
20
  for (const line of allLines) {
@@ -30,7 +30,7 @@ const rule = {
30
30
  }
31
31
  }
32
32
  return newFileLines;
33
- }
33
+ },
34
34
  },
35
35
  tests: [
36
36
  {
@@ -42,9 +42,9 @@ if (a == 1) {
42
42
  if (a == 1) {
43
43
  whatever()
44
44
  }
45
- `
46
- }
47
- ]
45
+ `,
46
+ },
47
+ ],
48
48
  };
49
49
 
50
- module.exports = { rule };
50
+ export { rule };
@@ -1,6 +1,6 @@
1
1
  // Consecutive blank lines
2
2
 
3
- const { getVariable } = require("../utils");
3
+ import { getVariable } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  scope: "file",
@@ -23,7 +23,7 @@ const rule = {
23
23
  pos++;
24
24
  }
25
25
  return newFileLines;
26
- }
26
+ },
27
27
  },
28
28
  tests: [
29
29
  {
@@ -37,7 +37,7 @@ x = 1
37
37
  if (a == 2){
38
38
 
39
39
  x = 1
40
- }`
40
+ }`,
41
41
  },
42
42
  {
43
43
  sourceBefore: `
@@ -52,9 +52,9 @@ x = 1
52
52
  if (a == 2){
53
53
 
54
54
  x = 1
55
- }`
56
- }
57
- ]
55
+ }`,
56
+ },
57
+ ],
58
58
  };
59
59
 
60
- module.exports = { rule };
60
+ export { rule };
@@ -1,6 +1,6 @@
1
1
  // Duplicate import
2
2
 
3
- const { getVariable } = require("../utils");
3
+ import { getVariable } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  scope: "file",
@@ -16,7 +16,7 @@ const rule = {
16
16
  throw new Error(`FIX ERROR: Duplicate Import not found at at position ${lineNumber}`);
17
17
  }
18
18
  return allLines;
19
- }
19
+ },
20
20
  },
21
21
 
22
22
  tests: [
@@ -58,9 +58,9 @@ class Wesh {
58
58
  class Gros {
59
59
  JFileChooser inputX
60
60
  }
61
- `
62
- }
63
- ]
61
+ `,
62
+ },
63
+ ],
64
64
  };
65
65
 
66
- module.exports = { rule };
66
+ export { rule };
@@ -1,21 +1,21 @@
1
1
  // Duplicate number literal
2
2
 
3
- const { getVariableRange } = require("../utils");
3
+ import { getVariableRange } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  variables: [
7
7
  {
8
8
  name: "NUMBER_LITERAL",
9
9
  regex: /Duplicate Number Literal: (.*)/,
10
- regexPos: 1
11
- }
10
+ regexPos: 1,
11
+ },
12
12
  ],
13
13
  range: {
14
14
  type: "function",
15
15
  func: (errLine, errItem, evaluatedVars) => {
16
16
  return getVariableRange(errLine, evaluatedVars, "NUMBER_LITERAL", errItem);
17
- }
18
- }
17
+ },
18
+ },
19
19
  };
20
20
 
21
- module.exports = { rule };
21
+ export { rule };
@@ -1,21 +1,21 @@
1
1
  // Duplicate string literal
2
2
 
3
- const { getVariableRange } = require("../utils");
3
+ import { getVariableRange } from "../utils.js";
4
4
 
5
5
  const rule = {
6
6
  variables: [
7
7
  {
8
8
  name: "STRING_LITERAL",
9
9
  regex: /Duplicate String Literal: (.*)/,
10
- regexPos: 1
11
- }
10
+ regexPos: 1,
11
+ },
12
12
  ],
13
13
  range: {
14
14
  type: "function",
15
15
  func: (errLine, errItem, evaluatedVars) => {
16
16
  return getVariableRange(errLine, evaluatedVars, "STRING_LITERAL", errItem);
17
- }
18
- }
17
+ },
18
+ },
19
19
  };
20
20
 
21
- module.exports = { rule };
21
+ export { rule };
@@ -1,5 +1,5 @@
1
1
  // Missing else braces
2
- const { containsOtherThan, getStringRangeMultiline, getVariable, isValidCodeLine } = require("../utils");
2
+ import { containsOtherThan, getStringRangeMultiline, getVariable, isValidCodeLine } from "../utils.js";
3
3
 
4
4
  const rule = {
5
5
  scope: "file",
@@ -10,7 +10,7 @@ const rule = {
10
10
  type: "function",
11
11
  func: (_errLine, errItem, _evaluatedVars, allLines) => {
12
12
  return getStringRangeMultiline(allLines, "else", errItem, "if");
13
- }
13
+ },
14
14
  },
15
15
  fix: {
16
16
  label: "Add else statement braces",
@@ -59,7 +59,7 @@ const rule = {
59
59
  pos++;
60
60
  }
61
61
  return allLines;
62
- }
62
+ },
63
63
  },
64
64
  tests: [
65
65
  {
@@ -78,7 +78,7 @@ else {
78
78
  whateverElse()
79
79
  }
80
80
  `,
81
- codeNarcCallsNumber: 2
81
+ codeNarcCallsNumber: 2,
82
82
  },
83
83
  {
84
84
  sourceBefore: `
@@ -96,7 +96,7 @@ else {
96
96
  doRetrieve = true
97
97
  }
98
98
  `,
99
- codeNarcCallsNumber: 2
99
+ codeNarcCallsNumber: 2,
100
100
  },
101
101
  {
102
102
  sourceBefore: `
@@ -133,7 +133,7 @@ private doReplaceInFile(String fileName, def searchRegex, String replacementValu
133
133
  }
134
134
  }
135
135
  `,
136
- codeNarcCallsNumber: 2
136
+ codeNarcCallsNumber: 2,
137
137
  },
138
138
  {
139
139
  sourceBefore: `
@@ -152,9 +152,9 @@ static getFileExtension(fileName) {
152
152
  else return ''
153
153
  }
154
154
  `,
155
- codeNarcCallsNumber: 1
156
- }
157
- ]
155
+ codeNarcCallsNumber: 1,
156
+ },
157
+ ],
158
158
  };
159
159
 
160
- module.exports = { rule };
160
+ export { rule };
@@ -3,9 +3,9 @@ const rule = {
3
3
  fix: {
4
4
  label: "Replace ArrayList declaration by []",
5
5
  type: "function",
6
- func: line => {
6
+ func: (line) => {
7
7
  return line.replace(/new ArrayList(.*)\)/gi, "[]");
8
- }
8
+ },
9
9
  },
10
10
  tests: [
11
11
  {
@@ -14,7 +14,7 @@ const rule = {
14
14
  `,
15
15
  sourceAfter: `
16
16
  List<String> commandArray = []
17
- `
17
+ `,
18
18
  },
19
19
  {
20
20
  sourceBefore: `
@@ -22,9 +22,9 @@ List<String> commandArray=new ArrayList<String> ()
22
22
  `,
23
23
  sourceAfter: `
24
24
  List<String> commandArray=[]
25
- `
26
- }
27
- ]
25
+ `,
26
+ },
27
+ ],
28
28
  };
29
29
 
30
- module.exports = { rule };
30
+ export { rule };
@@ -3,9 +3,9 @@ const rule = {
3
3
  fix: {
4
4
  label: "Replace LinkedList declaration by [] as Queue",
5
5
  type: "function",
6
- func: line => {
6
+ func: (line) => {
7
7
  return line.replace(/new LinkedList(.*)\)/gi, "[] as Queue");
8
- }
8
+ },
9
9
  },
10
10
  tests: [
11
11
  {
@@ -14,7 +14,7 @@ const rule = {
14
14
  `,
15
15
  sourceAfter: `
16
16
  List<String> printList = [] as Queue
17
- `
17
+ `,
18
18
  },
19
19
  {
20
20
  sourceBefore: `
@@ -22,9 +22,9 @@ List<String> printList=new LinkedList<String>()
22
22
  `,
23
23
  sourceAfter: `
24
24
  List<String> printList=[] as Queue
25
- `
26
- }
27
- ]
25
+ `,
26
+ },
27
+ ],
28
28
  };
29
29
 
30
- module.exports = { rule };
30
+ export { rule };
@@ -1,5 +1,5 @@
1
1
  // File ends without new line
2
- const os = require("os");
2
+ import * as os from "os";
3
3
 
4
4
  const rule = {
5
5
  scope: "file",
@@ -7,9 +7,9 @@ const rule = {
7
7
  fix: {
8
8
  label: "Add new line at the end of file",
9
9
  type: "function",
10
- func: allLines => {
10
+ func: (allLines) => {
11
11
  return (allLines.join(os.EOL) + os.EOL).split(os.EOL);
12
- }
12
+ },
13
13
  },
14
14
  tests: [
15
15
  {
@@ -19,9 +19,9 @@ def b = 2`,
19
19
  sourceAfter: `
20
20
  def a = 1
21
21
  def b = 2
22
- `
23
- }
24
- ]
22
+ `,
23
+ },
24
+ ],
25
25
  };
26
26
 
27
- module.exports = { rule };
27
+ export { rule };
@@ -9,15 +9,15 @@ def someString = '\${SCRIPT,template=\\"mail_template_robot_results.groovy\\"}'
9
9
  expectedRange: {
10
10
  start: {
11
11
  line: 2,
12
- character: 0
12
+ character: 0,
13
13
  },
14
14
  end: {
15
15
  line: 2,
16
- character: 76
17
- }
18
- }
19
- }
20
- ]
16
+ character: 76,
17
+ },
18
+ },
19
+ },
20
+ ],
21
21
  };
22
22
 
23
- module.exports = { rule };
23
+ export { rule };