• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1'use strict';
2
3const common = require('../common');
4if ((!common.hasCrypto) || (!common.hasIntl)) {
5  common.skip('ESLint tests require crypto and Intl');
6}
7
8common.skipIfEslintMissing();
9
10const RuleTester = require('../../tools/node_modules/eslint').RuleTester;
11const rule = require('../../tools/eslint-rules/prefer-assert-iferror');
12
13new RuleTester().run('prefer-assert-iferror', rule, {
14  valid: [
15    'assert.ifError(err);',
16    'if (err) throw somethingElse;',
17    'throw err;',
18    'if (err) { throw somethingElse; }',
19  ],
20  invalid: [
21    {
22      code: 'require("assert");\n' +
23            'if (err) throw err;',
24      errors: [{ message: 'Use assert.ifError(err) instead.' }],
25      output: 'require("assert");\n' +
26              'assert.ifError(err);'
27    },
28    {
29      code: 'require("assert");\n' +
30            'if (error) { throw error; }',
31      errors: [{ message: 'Use assert.ifError(error) instead.' }],
32      output: 'require("assert");\n' +
33              'assert.ifError(error);'
34    },
35  ]
36});
37