UNPKG

knip

Version:

Find and fix unused dependencies, exports and files in your TypeScript and JavaScript projects

31 lines (30 loc) 1.12 kB
import { toDeferResolve, toEntry } from '../../util/input.js'; import { hasDependency } from '../../util/plugin.js'; const title = 'Rstest'; const enablers = ['@rstest/core']; const isEnabled = ({ dependencies }) => hasDependency(dependencies, enablers); const config = ['rstest.config.{js,cjs,mjs,ts,cts,mts}']; const mocks = ['**/__mocks__/**/*.?(c|m)[jt]s?(x)']; const entry = ['**/*.{test,spec}.?(c|m)[jt]s?(x)']; function testEnvironment(config) { if (!config.testEnvironment || config.testEnvironment === 'node') return []; return [config.testEnvironment]; } const resolveConfig = async (config) => { const entries = (config.include ?? entry) .concat(...mocks) .map(toEntry) .concat(...(config.exclude ?? []).map(id => toEntry(`!${id}`))); const environments = testEnvironment(config); const setupFiles = config.setupFiles ?? []; return [...environments, ...setupFiles, ...entries].map(id => (typeof id === 'string' ? toDeferResolve(id) : id)); }; const plugin = { title, enablers, isEnabled, config, resolveConfig, }; export default plugin;