Archived
1
0
This repository has been archived on 2023-05-15. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
home-page/node_modules/eslint-plugin-jest/docs/rules/require-to-throw-message.md
Sean Edmunds 0584430b5c First commit
2021-12-13 17:00:40 -06:00

1023 B

Require a message for toThrow() (require-to-throw-message)

toThrow() (and its alias toThrowError()) is used to check if an error is thrown by a function call, such as in expect(() => a()).toThrow(). However, if no message is defined, then the test will pass for any thrown error. Requiring a message ensures that the intended error is thrown.

Rule details

This rule triggers a warning if toThrow() or toThrowError() is used without an error message.

Default configuration

The following patterns are considered warnings:

test('all the things', async () => {
  expect(() => a()).toThrow();

  expect(() => a()).toThrowError();

  await expect(a()).rejects.toThrow();

  await expect(a()).rejects.toThrowError();
});

The following patterns are not considered warnings:

test('all the things', async () => {
  expect(() => a()).toThrow('a');

  expect(() => a()).toThrowError('a');

  await expect(a()).rejects.toThrow('a');

  await expect(a()).rejects.toThrowError('a');
});