summaryrefslogtreecommitdiff
path: root/test/parallel/test-eslint-lowercase-name-for-primitive.js
blob: 11cba8f3f8e697148d2e4255c1f1e8fe31fe6cc9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
'use strict';

const common = require('../common');
if (!common.hasCrypto)
  common.skip('missing crypto');

common.skipIfEslintMissing();

const RuleTester = require('../../tools/node_modules/eslint').RuleTester;
const rule = require('../../tools/eslint-rules/lowercase-name-for-primitive');

new RuleTester().run('lowercase-name-for-primitive', rule, {
  valid: [
    'new errors.TypeError("ERR_INVALID_ARG_TYPE", "a", ["string", "number"])',
    'new errors.TypeError("ERR_INVALID_ARG_TYPE", "name", "string")',
    'new errors.TypeError("ERR_INVALID_ARG_TYPE", "name", "number")',
    'new errors.TypeError("ERR_INVALID_ARG_TYPE", "name", "boolean")',
    'new errors.TypeError("ERR_INVALID_ARG_TYPE", "name", "null")',
    'new errors.TypeError("ERR_INVALID_ARG_TYPE", "name", "undefined")',
  ],
  invalid: [
    {
      code: "new errors.TypeError('ERR_INVALID_ARG_TYPE', 'a', 'Number')",
      errors: [{ message: 'primitive should use lowercase: Number' }],
      output: "new errors.TypeError('ERR_INVALID_ARG_TYPE', 'a', 'number')",
    },
    {
      code: "new errors.TypeError('ERR_INVALID_ARG_TYPE', 'a', 'STRING')",
      errors: [{ message: 'primitive should use lowercase: STRING' }],
      output: "new errors.TypeError('ERR_INVALID_ARG_TYPE', 'a', 'string')",
    },
    {
      code: "new e.TypeError('ERR_INVALID_ARG_TYPE', a, ['String','Number'])",
      errors: [
        { message: 'primitive should use lowercase: String' },
        { message: 'primitive should use lowercase: Number' },
      ],
      output: "new e.TypeError('ERR_INVALID_ARG_TYPE', a, ['string','number'])",
    },
  ]
});