no-empty-vitest-coverage-include
Disallow empty test.coverage.include arrays in Vitest config.
Rule catalog ID: R030
Targeted pattern scopeโ
vitest.config.*vitest.workspace.*vite.config.*when Vitest coverage options are usedtest.coverage.include
What this rule reportsโ
This rule reports test.coverage.include: [].
Why this rule existsโ
An empty coverage include list usually means intended targeting is effectively disabled. Catching this helps keep coverage settings intentional and useful.
โ Incorrectโ
import { defineConfig } from "vitest/config";
export default defineConfig({
test: {
coverage: {
include: [],
},
},
});
โ Correctโ
import { defineConfig } from "vitest/config";
export default defineConfig({
test: {
coverage: {
include: ["src/**/*.ts"],
},
},
});
Behavior and migration notesโ
- this rule checks static empty arrays only
- it does not validate include glob quality
ESLint flat config exampleโ
import vite from "@typpi/eslint-plugin-vite";
export default [vite.configs.strict, vite.configs.vitest];
When not to use itโ
Disable this rule only if coverage include patterns are generated dynamically and empty committed arrays are intentional placeholders.