/** * Для подробного объяснения каждого свойства конфигурации, посетите: * https://jestjs.io/docs/configuration */ /** @type {import('jest').Config} */ const config = { // Все импортированные модули в тестах должны быть автоматически замоканы // automock: false, // Остановить выполнение тестов после `n` неудач // bail: 0, // Директория, где Jest должен хранить кэшированную информацию о зависимостях // cacheDirectory: "C:\\Users\\alex\\AppData\\Local\\Temp\\jest", // Автоматически очищать вызовы моков, экземпляры, контексты и результаты перед каждым тестом clearMocks: true, // Указывает, должна ли собираться информация о покрытии во время выполнения тестов collectCoverage: true, // Массив glob-паттернов, указывающих набор файлов, для которых должна собираться информация о покрытии collectCoverageFrom: [ "/server/routers/**/*.js" ], // Директория, куда Jest должен выводить файлы покрытия coverageDirectory: "coverage", // Массив строк regexp-паттернов, используемых для пропуска сбора покрытия coveragePathIgnorePatterns: [ "\\\\node_modules\\\\", "/server/routers/old" ], // Указывает, какой провайдер должен использоваться для инструментирования кода для покрытия coverageProvider: "v8", // Список имен репортеров, которые Jest использует при записи отчетов о покрытии // coverageReporters: [ // "json", // "text", // "lcov", // "clover" // ], // Объект, который настраивает принудительное применение минимальных порогов для результатов покрытия // coverageThreshold: undefined, // Путь к пользовательскому извлекателю зависимостей // dependencyExtractor: undefined, // Заставить вызовы устаревших API выбрасывать полезные сообщения об ошибках // errorOnDeprecated: false, // Конфигурация по умолчанию для поддельных таймеров // fakeTimers: { // "enableGlobally": false // }, // Принудительно собирать покрытие из игнорируемых файлов, используя массив glob-паттернов // forceCoverageMatch: [], // Путь к модулю, который экспортирует асинхронную функцию, вызываемую один раз перед всеми наборами тестов // globalSetup: undefined, // Путь к модулю, который экспортирует асинхронную функцию, вызываемую один раз после всех наборов тестов // globalTeardown: undefined, // Набор глобальных переменных, которые должны быть доступны во всех тестовых окружениях // globals: {}, // Максимальное количество воркеров, используемых для запуска тестов. Может быть указано в % или числом. Например, maxWorkers: 10% будет использовать 10% от количества CPU + 1 в качестве максимального числа воркеров. maxWorkers: 2 будет использовать максимум 2 воркера. // maxWorkers: "50%", // Массив имен директорий, которые должны быть рекурсивно найдены вверх от местоположения требуемого модуля // moduleDirectories: [ // "node_modules" // ], // Массив расширений файлов, которые используют ваши модули moduleFileExtensions: [ "js", "mjs", "cjs", "jsx", "ts", "tsx", "json", "node" ], // Карта из регулярных выражений в имена модулей или массивы имен модулей, которые позволяют заглушить ресурсы одним модулем // moduleNameMapper: {}, // Массив строк regexp-паттернов, сопоставляемых со всеми путями модулей перед тем, как они будут считаться 'видимыми' для загрузчика модулей // modulePathIgnorePatterns: [], // Активирует уведомления для результатов тестов // notify: false, // Перечисление, которое указывает режим уведомлений. Требует { notify: true } // notifyMode: "failure-change", // Пресет, который используется в качестве основы для конфигурации Jest preset: 'ts-jest', // Запускать тесты из одного или нескольких проектов // projects: undefined, // Используйте эту опцию конфигурации для добавления пользовательских репортеров в Jest // reporters: undefined, // Автоматически сбрасывать состояние моков перед каждым тестом // resetMocks: false, // Сбрасывать реестр модулей перед запуском каждого отдельного теста // resetModules: false, // Путь к пользовательскому резолверу // resolver: undefined, // Автоматически восстанавливать состояние моков и реализацию перед каждым тестом // restoreMocks: false, // Корневая директория, которую Jest должен сканировать для поиска тестов и модулей // rootDir: undefined, // Список путей к директориям, которые Jest должен использовать для поиска файлов // roots: [ // "" // ], // Позволяет использовать пользовательский раннер вместо стандартного тестового раннера Jest // runner: "jest-runner", // Пути к модулям, которые выполняют некоторый код для настройки или подготовки тестового окружения перед каждым тестом // setupFiles: [], // Список путей к модулям, которые выполняют некоторый код для настройки или подготовки тестового фреймворка перед каждым тестом // setupFilesAfterEnv: [], // Количество секунд, после которого тест считается медленным и сообщается как таковой в результатах. // slowTestThreshold: 5, // Список путей к модулям сериализаторов снимков, которые Jest должен использовать для тестирования снимков // snapshotSerializers: [], // Тестовое окружение, которое будет использоваться для тестирования testEnvironment: "node", // Опции, которые будут переданы в testEnvironment // testEnvironmentOptions: {}, // Добавляет поле местоположения к результатам тестов // testLocationInResults: false, // Glob-паттерны, которые Jest использует для обнаружения тестовых файлов testMatch: [ "**/__tests__/**/*.[jt]s?(x)", "**/?(*.)+(spec|test).[tj]s?(x)" ], // Массив строк regexp-паттернов, которые сопоставляются со всеми тестовыми путями, сопоставленные тесты пропускаются // testPathIgnorePatterns: [ // "\\\\node_modules\\\\" // ], // Regexp-паттерн или массив паттернов, которые Jest использует для обнаружения тестовых файлов // testRegex: [], // Эта опция позволяет использовать пользовательский процессор результатов // testResultsProcessor: undefined, // Эта опция позволяет использовать пользовательский тестовый раннер // testRunner: "jest-circus/runner", // Карта из регулярных выражений в пути к трансформерам transform: { '^.+\\.ts$': 'ts-jest', '^.+\\.tsx$': 'ts-jest', }, // Массив строк regexp-паттернов, которые сопоставляются со всеми путями исходных файлов, сопоставленные файлы будут пропускать трансформацию // transformIgnorePatterns: [ // "\\\\node_modules\\\\", // "\\.pnp\\.[^\\\\]+$" // ], // Массив строк regexp-паттернов, которые сопоставляются со всеми модулями перед тем, как загрузчик модулей автоматически вернет мок для них // unmockedModulePathPatterns: undefined, // Указывает, должен ли каждый отдельный тест сообщаться во время выполнения verbose: true, // Массив regexp-паттернов, которые сопоставляются со всеми путями исходных файлов перед повторным запуском тестов в режиме наблюдения // watchPathIgnorePatterns: [], // Использовать ли watchman для обхода файлов // watchman: true, }; module.exports = config;