testing-library / eslint-plugin-testing-library

ESLint plugin to follow best practices and anticipate common mistakes when writing tests with Testing Library
https://npm.im/eslint-plugin-testing-library
MIT License
968 stars 135 forks source link

no-debug also affects log.debug() custom logger #845

Open gkiely opened 7 months ago

gkiely commented 7 months ago

Have you read the Troubleshooting section?

Yes

Plugin version

6.2.0

ESLint version

8.54.0

Node.js version

20.2.0

package manager and version

9.6.6

Operating system

macOS Monterey, 12.7

Bug description

Using a logger in my code, specifically log.debug('')

Steps to reproduce

  1. Set up eslint-plugin-testing-library
  2. import or write a logger library that uses log.debug (example)
  3. type log.debug()
  4. Error will fire when linting

Error output/screenshots

error Unexpected debug statement testing-library/no-debugging-utils

ESLint configuration

{
  "env": {
    "shared-node-browser": true,
    "es2022": true
  },
  "ignorePatterns": ["src/app/index.css", "public"],
  "parser": "@typescript-eslint/parser",
  "parserOptions": {
    "ecmaVersion": "latest",
    "tsconfigRootDir": ".",
    "project": ["./tsconfig.json", "./tsconfig.node.json"]
  },
  "settings": {
    "react": {
      "version": "detect"
    }
  },
  "plugins": ["testing-library"],
  "testing-library/no-debugging-utils": "error",
}

Rule(s) affected

testing-library/no-debugging-utils

Anything else?

Ideally it would only affect .debug() or when it is using screen or a testing-library helper method. Alternatively having an option to be able to limit it to screen.debug() would also suffice

Do you want to submit a pull request to fix this bug?

Yes

Belco90 commented 5 months ago

Hey @gkiely! This is related to Aggressive Reporting. Have you checked the Troubleshooting section to find more about restricting this behavior?