Мы создаем NodeJS Framework Midway JS и рекомендуем нашим пользователям использовать Jest для создания тестовых примеров. Мы модифицировали Jest Env следующим образом:
'use strict';
const NodeEnvironment = require('jest-environment-node');
/* eslint-disable no-useless-constructor */
class JestEnvironment extends NodeEnvironment {
constructor(config) {
super(config);
}
async setup() {
require('ts-node/register');
this.global.process.env.MIDWAY_TS_MODE = 'true';
this.global.process.env.MIDWAY_JEST_MODE = 'true';
this.global.setTimeout(3000)
await super.setup();
}
async teardown() {
await super.teardown();
}
runScript(script) {
return super.runScript(script);
}
}
module.exports = JestEnvironment;
С приведенной выше конфигурацией все идет хорошо, но у нас возникла проблема:
Некоторые пользователи создают огромный каталог проекта, и наша структура перед этим просканирует весь каталог. запуск приложения, при запуске тестовых примеров он действует также таким же образом, что в некоторых случаях требует более 3000 мс - Jest устанавливает asyn c время обратного вызова по умолчанию, равное 3000 мс, поэтому, если сканирование не завершилось через 3000 мс тест будет sh.
, мы легко решили эту проблему, используя jest.setup. js в одной строке: jest.setTimeout (30000), но теперь мы хотим решить эту проблему в файле, который показал в первом случае, и я не нашел в нем способа изменить конфигурацию установки.
Я был бы очень признателен, если бы вы помогли мне разобраться.