Files
meeting-room/frontend/node_modules/eslint-plugin-jest/docs/rules/require-top-level-describe.md
flying-hero 96f6318101 📦 添加虚拟环境和启动脚本
新增:
- backend/venv/ - Python 虚拟环境
- backend/start.sh - 启动脚本(使用虚拟环境)
- backend/requirements.txt - 依赖列表
- .gitignore - 忽略虚拟环境和缓存文件

说明:
- 每个项目使用独立虚拟环境
- 避免依赖冲突
- 启动脚本自动创建和激活虚拟环境
2026-04-04 18:29:02 +08:00

81 lines
1.8 KiB
Markdown

# Require test cases and hooks to be inside a `describe` block (`require-top-level-describe`)
Jest allows you to organise your test files the way you want it. However, the
more your codebase grows, the more it becomes hard to navigate in your test
files. This rule makes sure you provide at least a top-level `describe` block in
your test file.
## Rule Details
This rule triggers a warning if a test case (`test` and `it`) or a hook
(`beforeAll`, `beforeEach`, `afterEach`, `afterAll`) is not located in a
top-level `describe` block.
The following patterns are considered warnings:
```js
// Above a describe block
test('my test', () => {});
describe('test suite', () => {
it('test', () => {});
});
// Below a describe block
describe('test suite', () => {});
test('my test', () => {});
// Same for hooks
beforeAll('my beforeAll', () => {});
describe('test suite', () => {});
afterEach('my afterEach', () => {});
```
The following patterns are **not** considered warnings:
```js
// In a describe block
describe('test suite', () => {
test('my test', () => {});
});
// In a nested describe block
describe('test suite', () => {
test('my test', () => {});
describe('another test suite', () => {
test('my other test', () => {});
});
});
```
You can also enforce a limit on the number of describes allowed at the top-level
using the `maxNumberOfTopLevelDescribes` option:
```json
{
"jest/require-top-level-describe": [
"error",
{
"maxNumberOfTopLevelDescribes": 2
}
]
}
```
Examples of **incorrect** code with the above config:
```js
describe('test suite', () => {
it('test', () => {});
});
describe('test suite', () => {});
describe('test suite', () => {});
```
This option defaults to `Infinity`, allowing any number of top-level describes.
## When Not To Use It
Don't use this rule on non-jest test files.