> For AI agents: the complete documentation index is available at https://rslint.rs/llms.txt, the full documentation bundle is available at https://rslint.rs/llms-full.txt.

# padding-around-describe-blocks

[Added in v0.9.2](https://github.com/web-infra-dev/rslint/releases/tag/v0.9.2)
## Configuration

| Preset                     | Configured Value |
| -------------------------- | ---------------- |
| ✅ rstestPlugin.configs.all | `"warn"`         |


```ts title=rslint.config.ts
import { defineConfig, rstestPlugin } from '@rslint/core';

export default defineConfig([
  rstestPlugin.configs.recommended,
  {
    rules: {
      'rstest/padding-around-describe-blocks': 'error',
    },
  },
]);
```

## Rule Details

Require a blank line before and after `describe` statements so suites are visually separated from surrounding setup, tests, and sibling suites. No trailing blank line is required when the suite is the last statement in its scope.

The rule classifies an expression statement by its first identifier, so calls and chains such as `describe.skip` and `describe.each` are included regardless of where `describe` was declared. Renamed aliases and namespace calls such as `rstest.describe` are not recognized. Type information is not required.

## Incorrect

```ts
const account = createAccount();
describe('account', () => {});
describe.skip('archived account', () => {});
```

## Correct

```ts
const account = createAccount();

describe('account', () => {});

describe.skip('archived account', () => {});
```

## Autofix

The rule inserts missing blank lines before and after `describe` statements.
