简体   繁体   中英

ESLint with Mocha

I am trying to use ESLint for mocha, but for some reason the rules don'y apply and the linting passes.

My config file:

module.exports = {
    "env": {
        "browser": true,
        "es6": true,
        "node": true,
    },
    "extends": "eslint:recommended",
    "globals": {
        "Atomics": "readonly",
        "SharedArrayBuffer": "readonly",
        "expect": "true"
    },
    "parserOptions": {
        "ecmaFeatures": {
            "jsx": true
        },
        "ecmaVersion": 2018,
        "sourceType": "module"
    },
    overrides: [
        {
            files: [
                "**/*.test.js"
            ],
            env: {
                mocha: true
            },
            plugins: ["mocha"],
            rules: {
                "mocha/no-exclusive-tests": "error",
                "mocha/no-pending-tests": "error"
            }
        }
    ]
};

My test file only includes one line:

it('should throw a lint error')

The linter should find an error because of the 'no pending tests' rule, yet when I run the test file with eslint the linting passes as a success.

I have no idea why. I looked it up online and it seems like my configuration file is good as it is.

your solution is the same as this post answer .

However, the one that suits you better is the one you only edit the .eslintrc file as shown in eslint-configuration-doc , which would go like this:

module.exports = {
  env: {
    browser: false,
    es6: true,
    node: true,
    mocha: true
   }
 // More code to go on that is not relative to your question ...

}

The line you are aiming is the one with

mocha: true

This solution worked for me.

{
    "env": {
        "browser": true,
        "es6": true,
        "mocha": true // add mocha as true to your ".eslintrc. *" file
    }
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM