copal
@copal
𝄞 ...оооо baby

Как импортировать тесты с es6 модулями?

Есть директория в которой хранятся *Spec.js и выполняются в karma + jasmine. Как сделать так,
что был только один mainSpec.js в который я импортирую модули с тестами и по необходимости отключать и подключать нужные простыми комментариями? Можно так вообще сделать?
  • Вопрос задан
  • 370 просмотров
Решения вопроса 2
@MrCheater
Full-Stack JS. В прошлом программист-олимпиадник
Думаю что нет. Запускатель тестов должен быть внешним - можно например скрипт для gulp запилить
Ответ написан
Комментировать
@bromzh
Drugs-driven development
Можно настроить вебпак соответствующим образом.
См. в этом репозитории на файл spec.bundle.js. В настройках кармы подключается только этот файл. В самом же файле:
1) Создаётся функция-контекст. require.context составляет список файлов в соответствии с параметрами (1-й - корневая директория, где будут искаться файлы, 2-й - рекурсивно или нет искать файлы и 3-й - регулярка-фильтр)
2) У полученной функции-переменной (context) есть метод keys, который возвращает список всех найденных файлов (их имена).
3) Для каждого найденного файла вызывается рекурсивно функция context, таким образом, все импорты в тестах разрешаются правильно.

В итоге, ты можешь либо фильтровать вручную по ключам, либо передать в функцию require.context такие параметры, чтобы находился только 1 файл. А в самом файле подключать нужные спеки.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы