Skip to content

v4.0.0

Compare
Choose a tag to compare
@github-actions github-actions released this 11 Apr 18:13
· 308 commits to main since this release

4.0.0 (2021-04-11)

Overview

eslint-plugin-testing-library v4 brings the new Aggressive Reporting (an advanced mechanism to drastically improve reporting things related to Testing Library), 7 new rules, Shareable Configs updates, more consistent and flexible detection, and tons of bug fixes. You can follow this migrating to v4 guide.

BREAKING CHANGES

  • Minimum ESLint version required is v7.5. Support from v5.X to v7.5 has been dropped
  • recommended Shareable Config has been renamed to dom
  • no-promise-in-fire-event rule enabled in dom, angular, react and vue Shareable Configs
  • no-wait-for-empty-callback rule enabled in dom, angular, react and vue Shareable Configs
  • prefer-screen-queries rule enabled in dom, angular, react and vue Shareable Configs
  • no-container rule enabled in angular, react and vue Shareable Configs
  • no-node-access rule enabled in angular, react and vue Shareable Configs
  • render-result-naming-convention rule enabled in angular, react and vue Shareable Configs
  • no-debug rule changed from "warning" to "error" in angular, react and vue Shareable Configs
  • prefer-explicit-assert: option customQueryNames has been removed
  • no-debug: option renderFunctions has been removed
  • no-render-in-setup: option renderFunctions has been removed

Bug Fixes

  • all rules detect things related to Testing Library (wrappers, variable references, custom imports, renamed utils) better and more consistently
  • await-async-query: detect wrappers around async queries properly (#260)
  • await-async-utils: detect wrappers around async utils properly (#263)
  • await-fire-event: detect wrappers around fire event properly (#265)
  • no-await-sync-events: report type and keyboard methods with 0 delay (#302)
  • no-debug: detect wrappers around debug properly (#295)
  • prefer-screen-queries: ignore queries coming from non-reportable renders
  • prefer-screen-queries: improve error message (#320)

Features

  • new Aggressive Reporting mechanism for detecting Testing Library imports, renders, utils, and queries (#237, #252, #260)
  • new rule no-container (#177, #295)
  • new rule render-result-naming-convention (#200, #280, #282)
  • new rule prefer-user-event (#192, #251)
  • new rule no-promise-in-fire-event (#180, #266)
  • new rule no-wait-for-side-effects (#196, #300)
  • new rule no-node-access (#190, #237)
  • new rule no-wait-for-multiple-assertions (#189, #301)
  • new shared setting testing-library/utils-module (#239)
  • new shared setting testing-library/custom-renders (#280, #282)

Contributors

Huge thanks to @nickmccurdy @thebinaryfelix @timdeschryver @gndelia @renatoagds @MichaelDeBoey @thomaslombart for your contributions of all kind! v4 wouldn't be possible without you ❤️