Skip to content

Commit c0b01b0

Browse files
authored
refactor: remove remaining support for old async utils (#706)
1 parent 9316c3a commit c0b01b0

17 files changed

+83
-524
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
<a href="https://testing-library.com/">
66
<img width="150" height="150" src="https://raw.githubusercontent.com/testing-library/dom-testing-library/master/other/octopus.png">
77
</a>
8+
89
<h1>eslint-plugin-testing-library</h1>
910
<p>ESLint plugin to follow best practices and anticipate common mistakes when writing tests with Testing Library</p>
1011
</div>
@@ -222,7 +223,6 @@ To enable this configuration use the `extends` property in your
222223
| [no-promise-in-fire-event](docs/rules/no-promise-in-fire-event.md) | Disallow the use of promises passed to a `fireEvent` method | ![badge-angular][] ![badge-dom][] ![badge-marko][] ![badge-react][] ![badge-vue][] | | |
223224
| [no-render-in-lifecycle](docs/rules/no-render-in-lifecycle.md) | Disallow the use of `render` in testing frameworks setup functions | ![badge-angular][] ![badge-marko][] ![badge-react][] ![badge-vue][] | | |
224225
| [no-unnecessary-act](docs/rules/no-unnecessary-act.md) | Disallow wrapping Testing Library utils or empty callbacks in `act` | ![badge-marko][] ![badge-react][] | | |
225-
| [no-wait-for-empty-callback](docs/rules/no-wait-for-empty-callback.md) | Disallow empty callbacks for `waitFor` and `waitForElementToBeRemoved` | ![badge-angular][] ![badge-dom][] ![badge-marko][] ![badge-react][] ![badge-vue][] | | |
226226
| [no-wait-for-multiple-assertions](docs/rules/no-wait-for-multiple-assertions.md) | Disallow the use of multiple `expect` calls inside `waitFor` | ![badge-angular][] ![badge-dom][] ![badge-marko][] ![badge-react][] ![badge-vue][] | | |
227227
| [no-wait-for-side-effects](docs/rules/no-wait-for-side-effects.md) | Disallow the use of side effects in `waitFor` | ![badge-angular][] ![badge-dom][] ![badge-marko][] ![badge-react][] ![badge-vue][] | | |
228228
| [no-wait-for-snapshot](docs/rules/no-wait-for-snapshot.md) | Ensures no snapshot is generated inside of a `waitFor` call | ![badge-angular][] ![badge-dom][] ![badge-marko][] ![badge-react][] ![badge-vue][] | | |

docs/migration-guides/v6.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ If you are not on v5 yet, we recommend first following the [v5 migration guide](
55
## Overview
66

77
- `prefer-wait-for` was removed
8+
- `no-wait-for-empty-callback` was removed
89
- `await-fire-event` is now called `await-async-events` with support for an `eventModule` option with `userEvent` and/or `fireEvent`
910
- `await-async-events` is now enabled by default for `fireEvent` in Vue and Marko shared configs
1011
- `await-async-events` is now enabled by default for `userEvent` in all shared configs
@@ -21,6 +22,7 @@ If you are not on v5 yet, we recommend first following the [v5 migration guide](
2122
## Steps to upgrade
2223

2324
- Removing `testing-library/prefer-wait-for` if you were referencing it manually somewhere
25+
- Removing `testing-library/no-wait-for-empty-callback` if you were referencing it manually somewhere
2426
- Renaming `testing-library/await-fire-event` to `testing-library/await-async-events` if you were referencing it manually somewhere
2527
- Renaming `testing-library/await-async-query` to `testing-library/await-async-queries` if you were referencing it manually somewhere
2628
- Renaming `testing-library/no-await-async-query` to `testing-library/no-await-async-queries` if you were referencing it manually somewhere

docs/rules/await-async-utils.md

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,8 @@ Ensure that promises returned by async utils are handled properly.
1010

1111
Testing library provides several utilities for dealing with asynchronous code. These are useful to wait for an element until certain criteria or situation happens. The available async utils are:
1212

13-
- `waitFor` _(introduced since dom-testing-library v7)_
13+
- `waitFor`
1414
- `waitForElementToBeRemoved`
15-
- `wait` _(**deprecated** since dom-testing-library v7)_
16-
- `waitForElement` _(**deprecated** since dom-testing-library v7)_
17-
- `waitForDomChange` _(**deprecated** since dom-testing-library v7)_
1815

1916
This rule aims to prevent users from forgetting to handle the returned
2017
promise from async utils, which could lead to

docs/rules/no-wait-for-empty-callback.md

Lines changed: 0 additions & 45 deletions
This file was deleted.

docs/rules/no-wait-for-snapshot.md

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -29,14 +29,6 @@ const bar = async () => {
2929
await waitFor(() => expect(container).toMatchInlineSnapshot());
3030
// ...
3131
};
32-
33-
const baz = async () => {
34-
// ...
35-
await wait(() => {
36-
expect(container).toMatchSnapshot();
37-
});
38-
// ...
39-
};
4032
```
4133

4234
Examples of **correct** code for this rule:

docs/rules/prefer-find-by.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
## Rule details
1212

13-
This rule aims to use `findBy*` or `findAllBy*` queries to wait for elements, rather than using `waitFor`, or the deprecated methods `waitForElement` and `wait`.
13+
This rule aims to use `findBy*` or `findAllBy*` queries to wait for elements, rather than using `waitFor`.
1414
This rule analyzes those cases where `waitFor` is used with just one query method, in the form of an arrow function with only one statement (that is, without a block of statements). Given the callback could be more complex, this rule does not consider function callbacks or arrow functions with blocks of code.
1515

1616
Examples of **incorrect** code for this rule

lib/configs/angular.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ export = {
2020
'testing-library/no-node-access': 'error',
2121
'testing-library/no-promise-in-fire-event': 'error',
2222
'testing-library/no-render-in-lifecycle': 'error',
23-
'testing-library/no-wait-for-empty-callback': 'error',
2423
'testing-library/no-wait-for-multiple-assertions': 'error',
2524
'testing-library/no-wait-for-side-effects': 'error',
2625
'testing-library/no-wait-for-snapshot': 'error',

lib/configs/dom.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ export = {
1616
'testing-library/no-global-regexp-flag-in-query': 'error',
1717
'testing-library/no-node-access': 'error',
1818
'testing-library/no-promise-in-fire-event': 'error',
19-
'testing-library/no-wait-for-empty-callback': 'error',
2019
'testing-library/no-wait-for-multiple-assertions': 'error',
2120
'testing-library/no-wait-for-side-effects': 'error',
2221
'testing-library/no-wait-for-snapshot': 'error',

lib/configs/marko.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ export = {
2020
'testing-library/no-promise-in-fire-event': 'error',
2121
'testing-library/no-render-in-lifecycle': 'error',
2222
'testing-library/no-unnecessary-act': 'error',
23-
'testing-library/no-wait-for-empty-callback': 'error',
2423
'testing-library/no-wait-for-multiple-assertions': 'error',
2524
'testing-library/no-wait-for-side-effects': 'error',
2625
'testing-library/no-wait-for-snapshot': 'error',

lib/configs/react.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ export = {
2222
'testing-library/no-promise-in-fire-event': 'error',
2323
'testing-library/no-render-in-lifecycle': 'error',
2424
'testing-library/no-unnecessary-act': 'error',
25-
'testing-library/no-wait-for-empty-callback': 'error',
2625
'testing-library/no-wait-for-multiple-assertions': 'error',
2726
'testing-library/no-wait-for-side-effects': 'error',
2827
'testing-library/no-wait-for-snapshot': 'error',

0 commit comments

Comments
 (0)