github-pages-deploy-action/node_modules/eslint-plugin-jest/docs/rules/no-export.md

46 lines
992 B
Markdown
Raw Normal View History

2020-09-13 06:19:45 +08:00
# Disallow using `exports` in files containing tests (`no-export`)
2020-03-07 11:45:40 +08:00
2020-09-13 06:19:45 +08:00
Prevents using `exports` if a file has one or more tests in it.
2020-03-07 11:45:40 +08:00
## Rule Details
This rule aims to eliminate duplicate runs of tests by exporting things from
test files. If you import from a test file, then all the tests in that file will
be run in each imported instance, so bottom line, don't export from a test, but
2020-09-13 06:19:45 +08:00
instead move helper functions into a separate file when they need to be shared
2020-03-07 11:45:40 +08:00
across tests.
Examples of **incorrect** code for this rule:
```js
export function myHelper() {}
2020-09-13 06:19:45 +08:00
module.exports = function () {};
2020-03-07 11:45:40 +08:00
module.exports = {
something: 'that should be moved to a non-test file',
};
describe('a test', () => {
expect(1).toBe(1);
});
```
Examples of **correct** code for this rule:
```js
function myHelper() {}
const myThing = {
something: 'that can live here',
};
describe('a test', () => {
expect(1).toBe(1);
});
```
## When Not To Use It
Don't use this rule on non-jest test files.