ts-stub-gen
v1.1.0
Published
Генерация стаб-хелперов для автотестов по типам TypeScript
Readme
ts-stub-gen
Генерация стаб-хелперов для тестов по типам TypeScript. Для каждого типа создаётся функция, возвращающая корректный объект со значениями по умолчанию; в тесте через overrides: Partial<T> задаются только важные для него поля.
const response = GetStubResponse({
account: GetStubAccount({ balance: 100 }),
});Быстрый старт
npm install -D ts-stub-gents-stub-gen.config.json в корне проекта:
{
"source": { "type": "typescript", "entry": ["src/models/*.ts"] },
"output": { "file": "src/testing/stubs.ts" }
}npx ts-stub-genВозможности
- хелперы компонуются: вложенные типы — через их хелперы;
- кастомные значения полей (
output.values): выражения и функции из setup-файла — инкрементальные id, faker и т.п.; - понимает типы из библиотек схем:
z.infer(zod),v.InferOutput(valibot),t.TypeOf(io-ts),ReturnType<typeof fn>; - настраиваемые уровни предупреждений (
off | warn | error).
Документация
Полная документация лежит в docs и собирается VitePress (npm run docs:dev для локального просмотра, публикация на GitHub Pages — автоматически при пуше в master). На главной — обзор возможностей и ограничений, дальше разделы: быстрый старт, кастомные значения, рецепты, формат конфига.
