]>
git.proxmox.com Git - pve-eslint.git/blob - eslint/tests/lib/rules/func-call-spacing.js
2 * @fileoverview Tests for func-call-spacing rule.
3 * @author Matt DuVall <http://www.mattduvall.com>
8 //------------------------------------------------------------------------------
10 //------------------------------------------------------------------------------
12 const rule
= require("../../../lib/rules/func-call-spacing"),
13 { RuleTester
} = require("../../../lib/rule-tester");
15 //------------------------------------------------------------------------------
17 //------------------------------------------------------------------------------
19 const ruleTester
= new RuleTester();
21 ruleTester
.run("func-call-spacing", rule
, {
37 "(function(){ if (foo) { bar(); } }());",
39 "describe/**/('foo', function () {});",
42 code
: "import(source)",
43 parserOptions
: { ecmaVersion
: 2020 }
68 code
: "(function() {}())",
72 code
: "var f = new Foo()",
76 code
: "var f = new Foo",
88 code
: "( (f) )( (0) )",
96 code
: "(function(){ if (foo) { bar(); } }());",
104 code
: "describe/**/('foo', function () {});",
112 code
: "import(source)",
114 parserOptions
: { ecmaVersion
: 2020 }
131 code
: "f.b ().c ();",
139 code
: "(function() {} ())",
143 code
: "var f = new Foo ()",
147 code
: "var f = new Foo",
163 code
: "f ();\n t ();",
167 code
: "import (source)",
169 parserOptions
: { ecmaVersion
: 2020 }
172 // "always", "allowNewlines": true
175 options
: ["always", { allowNewlines
: true }]
179 options
: ["always", { allowNewlines
: true }]
182 code
: "f\n() ().b \n()\n ()",
183 options
: ["always", { allowNewlines
: true }]
186 code
: "var f = new Foo\n();",
187 options
: ["always", { allowNewlines
: true }]
190 code
: "f// comment\n()",
191 options
: ["always", { allowNewlines
: true }]
194 code
: "f // comment\n ()",
195 options
: ["always", { allowNewlines
: true }]
198 code
: "f\n/*\n*/\n()",
199 options
: ["always", { allowNewlines
: true }]
203 options
: ["always", { allowNewlines
: true }]
207 options
: ["always", { allowNewlines
: true }]
211 options
: ["always", { allowNewlines
: true }]
215 options
: ["always", { allowNewlines
: true }]
218 code
: "import\n(source)",
219 options
: ["always", { allowNewlines
: true }],
220 parserOptions
: { ecmaVersion
: 2020 }
227 parserOptions
: { ecmaVersion
: 2020 }
232 parserOptions
: { ecmaVersion
: 2020 }
237 parserOptions
: { ecmaVersion
: 2020 }
242 parserOptions
: { ecmaVersion
: 2020 }
251 errors
: [{ messageId
: "unexpectedWhitespace", type
: "CallExpression" }]
256 errors
: [{ messageId
: "unexpectedWhitespace", type
: "CallExpression" }]
263 messageId
: "unexpectedWhitespace",
264 type
: "CallExpression",
274 output
: "f.b().c();",
277 messageId
: "unexpectedWhitespace",
278 type
: "CallExpression",
289 errors
: [{ messageId
: "unexpectedWhitespace", type
: "CallExpression" }]
292 code
: "(function() {} ())",
293 output
: "(function() {}())",
294 errors
: [{ messageId
: "unexpectedWhitespace", type
: "CallExpression" }]
297 code
: "var f = new Foo ()",
298 output
: "var f = new Foo()",
299 errors
: [{ messageId
: "unexpectedWhitespace", type
: "NewExpression" }]
304 errors
: [{ messageId
: "unexpectedWhitespace", type
: "CallExpression" }]
309 errors
: [{ messageId
: "unexpectedWhitespace", type
: "CallExpression" }]
314 errors
: [{ messageId
: "unexpectedWhitespace", type
: "CallExpression" }]
317 code
: "f ();\n t ();",
318 output
: "f();\n t();",
320 { messageId
: "unexpectedWhitespace", type
: "CallExpression" },
321 { messageId
: "unexpectedWhitespace", type
: "CallExpression" }
325 code
: "import (source);",
326 output
: "import(source);",
327 parserOptions
: { ecmaVersion
: 2020 },
328 errors
: [{ messageId
: "unexpectedWhitespace", type
: "ImportExpression" }]
331 // https://github.com/eslint/eslint/issues/7787
334 output
: null, // no change
335 errors
: [{ messageId
: "unexpectedWhitespace", type
: "CallExpression" }]
339 output
: null, // no change
340 errors
: [{ messageId
: "unexpectedWhitespace", type
: "CallExpression" }]
344 output
: null, // no change
345 errors
: [{ messageId
: "unexpectedWhitespace", type
: "CallExpression" }]
349 output
: null, // no change
350 errors
: [{ messageId
: "unexpectedWhitespace", type
: "CallExpression" }]
354 output
: null, // no change
355 errors
: [{ messageId
: "unexpectedWhitespace", type
: "CallExpression" }]
358 code
: "import\n(source);",
360 parserOptions
: { ecmaVersion
: 2020 },
361 errors
: [{ messageId
: "unexpectedWhitespace", type
: "ImportExpression" }]
369 errors
: [{ messageId
: "unexpectedWhitespace", type
: "CallExpression" }]
375 errors
: [{ messageId
: "unexpectedWhitespace", type
: "CallExpression" }]
383 messageId
: "unexpectedWhitespace",
384 type
: "CallExpression",
394 output
: "f.b().c();",
398 messageId
: "unexpectedWhitespace",
399 type
: "CallExpression",
411 errors
: [{ messageId
: "unexpectedWhitespace", type
: "CallExpression" }]
414 code
: "(function() {} ())",
415 output
: "(function() {}())",
417 errors
: [{ messageId
: "unexpectedWhitespace", type
: "CallExpression" }]
420 code
: "var f = new Foo ()",
421 output
: "var f = new Foo()",
423 errors
: [{ messageId
: "unexpectedWhitespace", type
: "NewExpression" }]
429 errors
: [{ messageId
: "unexpectedWhitespace", type
: "CallExpression" }]
435 errors
: [{ messageId
: "unexpectedWhitespace", type
: "CallExpression" }]
441 errors
: [{ messageId
: "unexpectedWhitespace", type
: "CallExpression" }]
444 code
: "f ();\n t ();",
445 output
: "f();\n t();",
448 { messageId
: "unexpectedWhitespace", type
: "CallExpression" },
449 { messageId
: "unexpectedWhitespace", type
: "CallExpression" }
453 code
: "import (source);",
454 output
: "import(source);",
456 parserOptions
: { ecmaVersion
: 2020 },
457 errors
: [{ messageId
: "unexpectedWhitespace", type
: "ImportExpression" }]
460 // https://github.com/eslint/eslint/issues/7787
463 output
: null, // no change
467 messageId
: "unexpectedWhitespace",
468 type
: "CallExpression",
478 "this.cancelled.add(request)",
479 "this.decrement(request)",
480 "(0, request.reject)(new api.Cancel())"
482 output
: null, // no change
486 messageId
: "unexpectedWhitespace",
487 type
: "CallExpression",
498 "(function(global) {}(this));"
500 output
: null, // no change
504 messageId
: "unexpectedWhitespace",
505 type
: "CallExpression",
518 output
: null, // no change
522 messageId
: "unexpectedWhitespace",
523 type
: "CallExpression",
533 output
: null, // no change
537 messageId
: "unexpectedWhitespace",
538 type
: "CallExpression"
544 output
: null, // no change
548 messageId
: "unexpectedWhitespace",
549 type
: "CallExpression"
555 output
: null, // no change
559 messageId
: "unexpectedWhitespace",
560 type
: "CallExpression"
566 output
: null, // no change
570 messageId
: "unexpectedWhitespace",
571 type
: "CallExpression"
581 errors
: [{ messageId
: "missing", type
: "CallExpression" }]
585 output
: null, // Don't fix to avoid hiding no-unexpected-multiline (https://github.com/eslint/eslint/issues/7787)
587 errors
: [{ messageId
: "unexpectedNewline", type
: "CallExpression" }]
593 errors
: [{ messageId
: "missing", type
: "CallExpression" }]
597 output
: null, // Don't fix to avoid hiding no-unexpected-multiline (https://github.com/eslint/eslint/issues/7787)
599 errors
: [{ messageId
: "unexpectedNewline", type
: "CallExpression" }]
607 messageId
: "missing",
608 type
: "CallExpression",
618 output
: null, // Don't fix to avoid hiding no-unexpected-multiline (https://github.com/eslint/eslint/issues/7787)
622 messageId
: "unexpectedNewline",
623 type
: "CallExpression",
633 output
: "f.b ().c ();",
635 errors
: [{ messageId
: "missing", type
: "CallExpression", column
: 3 }]
638 code
: "f.b\n().c ();",
639 output
: null, // Don't fix to avoid hiding no-unexpected-multiline (https://github.com/eslint/eslint/issues/7787)
643 messageId
: "unexpectedNewline",
644 type
: "CallExpression",
656 errors
: [{ messageId
: "missing", type
: "CallExpression" }]
660 output
: null, // Don't fix to avoid hiding no-unexpected-multiline (https://github.com/eslint/eslint/issues/7787)
662 errors
: [{ messageId
: "unexpectedNewline", type
: "CallExpression" }]
666 output
: "f\n() ()", // Don't fix the first error to avoid hiding no-unexpected-multiline (https://github.com/eslint/eslint/issues/7787)
669 { messageId
: "unexpectedNewline", type
: "CallExpression" },
670 { messageId
: "missing", type
: "CallExpression" }
674 code
: "(function() {}())",
675 output
: "(function() {} ())",
677 errors
: [{ messageId
: "missing", type
: "CallExpression" }]
680 code
: "var f = new Foo()",
681 output
: "var f = new Foo ()",
683 errors
: [{ messageId
: "missing", type
: "NewExpression" }]
689 errors
: [{ messageId
: "missing", type
: "CallExpression" }]
695 errors
: [{ messageId
: "missing", type
: "CallExpression" }]
701 errors
: [{ messageId
: "missing", type
: "CallExpression" }]
704 code
: "import(source);",
705 output
: "import (source);",
707 parserOptions
: { ecmaVersion
: 2020 },
708 errors
: [{ messageId
: "missing", type
: "ImportExpression" }]
712 output
: "f ();\n t ();",
715 { messageId
: "missing", type
: "CallExpression" },
716 { messageId
: "missing", type
: "CallExpression" }
721 output
: null, // Don't fix to avoid hiding no-unexpected-multiline (https://github.com/eslint/eslint/issues/7787)
723 errors
: [{ messageId
: "unexpectedNewline", type
: "CallExpression" }]
727 output
: null, // Don't fix to avoid hiding no-unexpected-multiline (https://github.com/eslint/eslint/issues/7787)
729 errors
: [{ messageId
: "unexpectedNewline", type
: "CallExpression" }]
733 output
: null, // Don't fix to avoid hiding no-unexpected-multiline (https://github.com/eslint/eslint/issues/7787)
735 errors
: [{ messageId
: "unexpectedNewline", type
: "CallExpression" }]
739 output
: null, // Don't fix to avoid hiding no-unexpected-multiline (https://github.com/eslint/eslint/issues/7787)
741 errors
: [{ messageId
: "unexpectedNewline", type
: "CallExpression" }]
744 // "always", "allowNewlines": true
748 options
: ["always", { allowNewlines
: true }],
750 { messageId
: "missing", type
: "CallExpression" }]
755 options
: ["always", { allowNewlines
: true }],
756 errors
: [{ messageId
: "missing", type
: "CallExpression" }]
761 options
: ["always", { allowNewlines
: true }],
764 messageId
: "missing",
765 type
: "CallExpression",
772 output
: "f.b ().c ();",
773 options
: ["always", { allowNewlines
: true }],
774 errors
: [{ messageId
: "missing", type
: "CallExpression", column
: 3 }]
779 options
: ["always", { allowNewlines
: true }],
780 errors
: [{ messageId
: "missing", type
: "CallExpression" }]
783 code
: "(function() {}())",
784 output
: "(function() {} ())",
785 options
: ["always", { allowNewlines
: true }],
786 errors
: [{ messageId
: "missing", type
: "CallExpression" }]
789 code
: "var f = new Foo()",
790 output
: "var f = new Foo ()",
791 options
: ["always", { allowNewlines
: true }],
792 errors
: [{ messageId
: "missing", type
: "NewExpression" }]
797 options
: ["always", { allowNewlines
: true }],
798 errors
: [{ messageId
: "missing", type
: "CallExpression" }]
803 options
: ["always", { allowNewlines
: true }],
804 errors
: [{ messageId
: "missing", type
: "CallExpression" }]
809 options
: ["always", { allowNewlines
: true }],
810 errors
: [{ messageId
: "missing", type
: "CallExpression" }]
814 output
: "f ();\n t ();",
815 options
: ["always", { allowNewlines
: true }],
817 { messageId
: "missing", type
: "CallExpression" },
818 { messageId
: "missing", type
: "CallExpression" }
826 messageId
: "unexpectedWhitespace",
827 type
: "CallExpression",
840 messageId
: "unexpectedWhitespace",
841 type
: "CallExpression",
855 messageId
: "missing",
856 type
: "CallExpression",
865 code
: "fnn\n (a, b);",
866 output
: null, // Don't fix to avoid hiding no-unexpected-multiline (https://github.com/eslint/eslint/issues/7787)
870 messageId
: "unexpectedNewline",
871 type
: "CallExpression",
880 code
: "f /*comment*/ ()",
881 output
: null, // Don't remove comments
883 errors
: [{ messageId
: "unexpectedWhitespace" }]
887 output
: null, // Don't remove comments
889 errors
: [{ messageId
: "unexpectedWhitespace" }]
892 code
: "f/*comment*/()",
893 output
: "f/*comment*/ ()",
895 errors
: [{ messageId
: "missing" }]
903 parserOptions
: { ecmaVersion
: 2020 },
904 errors
: [{ messageId
: "unexpectedWhitespace" }]
910 parserOptions
: { ecmaVersion
: 2020 },
911 errors
: [{ messageId
: "unexpectedWhitespace" }]
917 parserOptions
: { ecmaVersion
: 2020 },
918 errors
: [{ messageId
: "unexpectedWhitespace" }]
924 parserOptions
: { ecmaVersion
: 2020 },
925 errors
: [{ messageId
: "unexpectedWhitespace" }]
928 code
: "func\n//comment\n?.()",
929 output
: null, // Don't remove comments
931 parserOptions
: { ecmaVersion
: 2020 },
932 errors
: [{ messageId
: "unexpectedWhitespace" }]
936 output
: null, // Not sure inserting a space into either before/after `?.`.
938 parserOptions
: { ecmaVersion
: 2020 },
939 errors
: [{ messageId
: "missing" }]
945 parserOptions
: { ecmaVersion
: 2020 },
946 errors
: [{ messageId
: "unexpectedNewline" }]
952 parserOptions
: { ecmaVersion
: 2020 },
953 errors
: [{ messageId
: "unexpectedNewline" }]
956 code
: "func ?.\n ()",
957 output
: "func ?. ()",
959 parserOptions
: { ecmaVersion
: 2020 },
960 errors
: [{ messageId
: "unexpectedNewline" }]
963 code
: "func\n /*comment*/ ?.()",
964 output
: null, // Don't remove comments
966 parserOptions
: { ecmaVersion
: 2020 },
967 errors
: [{ messageId
: "unexpectedNewline" }]