В Webstorm я использую jest для модульных тестов и создал расширение, используя expect.extend()
. Код для этого в {projectDir}./tests/jest-helpers.js
и в моем package.json
у меня есть следующее:
"jest": {
"setupFilesAfterEnv": ["./tests/jest-helpers.js"]
}
Это прекрасно работает, а расширение expect
прекрасно работает в моих юнит-тестах. Однако код, вызывающий этот метод в моих модульных тестах, не распознается как допустимый, с предупреждением «Неразрешенная функция или метод».
Я добавил файл .js как библиотеку, но это все равно не помогло. Как я могу получить метод, который будет признан? Могу ли я сделать что-нибудь из JSDoc, которое сообщит WebStorm, что у объекта expect
есть новое свойство?
Пример моего определения расширения expect
, которое не используется в качестве допустимого метода.
// jest-helper.js
expect.extend({
toSmellLike(actual, expected) {
// an implementation
}
});
Используется:
expect(value).toSmellLike('bananas'); // `toSmellLike is highlighted with a warning