У меня есть электронный проект, где у меня есть набор классов, выходящий из абстрактного класса.Абстрактный класс имеет импорт экземпляра sequelize и модели (не показано в коде воспроизведения ниже).
После компиляции мое электронное приложение работает нормально.Но в тесте Jest продолжает возвращать ошибку
Class extends value undefined is not a constructor or null
Из того, что я прочитал, это вызвано циклическими зависимостями.Я много раз комментировал код, но не могу понять, как предотвратить / решить эту проблему с помощью теста.
код воспроизведения можно найти здесь: https://github.com/jjoey87/jest-circular-dependencies
IsЕсть ли лучший способ реструктурировать мой импорт или реальный обходной путь, чтобы шутить над этой работой?Я не понимаю, почему это не вызывает проблем при компиляции через electronic-webpack, но бросает в шутку.Я также замечаю, что если я прокомментирую импортированные компоненты в модуле B, это позволяет моему тесту запускаться / проходить.
import ModuleC from '@common/ModuleC'
// import ComponentC from '@common/providers/ComponentC'
// import ComponentD from '@common/providers/ComponentD'
// import ComponentE from '@common/providers/ComponentE'
// import ComponentF from '@common/providers/ComponentF'
// import ComponentA from '@common/providers/ComponentA'
// import ComponentB from '@common/providers/ComponentB'
const providers = [
// ComponentC,
// ComponentD,
// ComponentE,
// ComponentF,
// ComponentA,
// ComponentB
]
Аналогичным образом, если я комментирую импорт sequelize из класса Abstract, он позволяет моемутест для прохождения