@flame180
Junior Frontend developer

Как настроить jest, что бы он распознавал файлы, на next.js проекте?

Суть такова: я настроил конфигурацию baseUrl в jsconfig.json что бы пользоваться абсолютными путями в проекте и настроил webpack в next.config.js что бы он распознавал импорт изображений. Когда я первый раз запустил Jest он поругался, что не видит абсолютные пути, решил проблему таким образом (воспользовался JsConfigPathsMapper):
const JsConfigPathsMapper = require('jsconfig-paths-jest-mapper');

module.exports = {
  verbose: true,
  moduleNameMapper: new JsConfigPathsMapper({ configFileName: "jsconfig.json" })
};


вот что в jsconfig.json:

{
  "compilerOptions": {
    "baseUrl": ".",
    "lib": ["es5", "es6", "dom"],
    "jsx": "react",
    "strict": false,
    "removeComments": true,
    "paths": {
      "src/*": ["src/*"],
      "public/*": ["public/*"],
      "public/(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$": ["__mocks__/fileMock.js"]
    }
  }
}

Вот что в /fileMock.js:
module.exports = 'test-file-stub';

Все абсолютные пути нашлись, но теперь осталась проблема что он не распознает изображения когда я запускаю jest:
FAIL  src/modules/place/PlaceCard/placeCard.test.js
  ● Test suite failed to run

    /mnt/c/Users/715/Desktop/my projects/surgut.expert/public/img/heart1.png:1
    ({"Object.<anonymous>":function(module,exports,require,__dirname,__filename,global,jest){�PNG


    SyntaxError: Invalid or unexpected token

      1 | import React from 'react';
      2 | import styled from 'styled-components';
    > 3 | import LikeSrc from 'public/img/heart1.png';


Подскажите пожалуйста что делать, я уже много что перепробовал, остается писать сюда
В гугле мало информации, находил данную проблему тут: https://github.com/facebook/jest/issues/2663, делал так же, но все равно не помогло, может что то не верно делал, знающие люди, выручайте плиз!
  • Вопрос задан
  • 285 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
23 нояб. 2024, в 21:53
30000 руб./за проект
23 нояб. 2024, в 21:49
1000 руб./в час
23 нояб. 2024, в 20:48
40000 руб./за проект