Ответ 1
Jest не использует Webpack, поэтому он не знает, как загрузить другие расширения файлов, кроме js/jsx. Чтобы добавить поддержку других расширений, вам нужно написать собственные преобразователи. Одним из преобразователей является преобразователь Typescript, который вы определили в своей конфигурации в этом фрагменте:
"transform": {
"^.+\\.tsx?$": "<rootDir>/node_modules/ts-jest/preprocessor.js"
},
Теперь вам нужно добавить трансформер для SVG файлов. Давайте расширим ваш шутливый конфиг
"transform": {
"^.+\\.tsx?$": "<rootDir>/node_modules/ts-jest/preprocessor.js",
"^.+\\.svg$": "<rootDir>/svgTransform.js"
},
и создайте файл svgTransform.js в корневом каталоге со следующим содержимым
module.exports = {
process() {
return 'module.exports = {};';
},
getCacheKey() {
// The output is always the same.
return 'svgTransform';
},
};
Конечно, это базовый преобразователь, который всегда возвращает одно и то же значение.
Ссылка на документацию: http://facebook.github.io/jest/docs/en/configuration.html#transform-object-string-string