unbound-method.md 1.55 KB

Enforces unbound methods are called with their expected scope (unbound-method)

Rule Details

This rule extends the base @typescript-eslint/unbound-method rule, meaning you must depend on @typescript-eslint/eslint-plugin for it to work. It adds support for understanding when it's ok to pass an unbound method to expect calls.

See the @typescript-eslint documentation for more details on the unbound-method rule.

Note that while this rule requires type information to work, it will fail silently when not available allowing you to safely enable it on projects that are not using TypeScript.

How to use

{
  parser: '@typescript-eslint/parser',
  parserOptions: {
    project: 'tsconfig.json',
    ecmaVersion: 2020,
    sourceType: 'module',
  },
  overrides: [
    {
      files: ['test/**'],
      plugins: ['jest'],
      rules: {
        // you should turn the original rule off *only* for test files
        '@typescript-eslint/unbound-method': 'off',
        'jest/unbound-method': 'error',
      },
    },
  ],
  rules: {
    '@typescript-eslint/unbound-method': 'error',
  },
}

This rule should be applied to your test files in place of the original rule, which should be applied to the rest of your codebase.

Options

See @typescript-eslint/unbound-method options.

Taken with ❤️ from @typescript-eslint core