Мне не удалось запустить тестовый пакет jasmine с webpack 4. После обновления webpack я получаю следующую ошибку почти для каждого теста:
Error: <spyOn> : getField is not declared writable or has no setter
Это связано с общим шаблоном, который мы используем для создания шпионов для простых функций:
import * as mod from 'my/module';
//...
const funcSpy = spyOn(mod, 'myFunc');
Я играл с module.rules[].type
, но ни один из вариантов, похоже, не помогает.
Этот ошибка GH указывает на то, что модули ECMA не доступны для записи, что имеет смысл для Интернета. но действительно ли нет обходного пути для тестирования?
Соответствующие версии пакетов:
"jasmine-core": "2.6.4",
"typescript": "2.5.3",
"webpack": "4.1.1",
"webpack-cli": "^2.0.12",
"karma": "^0.13.22",
"karma-jasmine": "^1.1.0",
"karma-webpack": "^2.0.13",