Ошибка типа: (0, _helper.addValue) не является функцией Jest Error - PullRequest
0 голосов
/ 13 ноября 2018

Jest выдает ошибку функции undefined, даже если функция определена в указанном файле. Я тестирую функцию, определенную в cards.js, но jest также выполняет мой файл редуктора, когда я запускаю тест с использованием 'npm test ', и в файле редуктора выдается сообщение о том, что fun не определена, но эта функция определена в helper.js, а также отлично работает, когда я запускаю свое приложение. Выдает только ошибку в тестовой консоли npm.

Ошибка: ● Не удалось запустить набор тестов Ошибка типа: (0, _helper.addValue) не является функцией

helper.js

export const addValue = (a, b) => a+ b

filter.reducer.js

import {addValue} from '../helper';
const result = addValue(5,4);
.
.
.
.

cards.js

import {pipe, prop} from 'ramda'
exprot const transformCardData = (response) =>{
  if(isEmpty(response)){
    return {}
   }
  return pip(
         prop('values)
       )
      }

` cards.test.js

describe('testing transformCardData function ', ()=>{
  it('testing empty response',()=>{
    expect(transformCardData({})).toBe({})
 }
}

package.json jest config

"scripts": {
    "analyze": "source-map-explorer build/static/js/main.*",
    "start": "node scripts/start.js",
    "build": "NODE_ENV='production' GENERATE_SOURCEMAP=false node scripts/build.js",
    "test": "node scripts/test.js"
  },
  "jest": {
    "collectCoverageFrom": [
      "src/**/*.{js,jsx,mjs}"
    ],
    "setupFiles": [
      "<rootDir>/config/polyfills.js"
    ],
    "testMatch": [
      "<rootDir>/src/**/__tests__/**/*.{js,jsx,mjs}",
      "<rootDir>/src/**/?(*.)(spec|test).{js,jsx,mjs}"
    ],
    "testEnvironment": "node",
    "testURL": "http://localhost",
    "transform": {
      "^.+\\.(js|jsx|mjs)$": "<rootDir>/node_modules/babel-jest",
      "^.+\\.css$": "<rootDir>/config/jest/cssTransform.js",
      "^(?!.*\\.(js|jsx|mjs|css|json)$)": "<rootDir>/config/jest/fileTransform.js"
    },
    "transformIgnorePatterns": [
      "[/\\\\]node_modules[/\\\\].+\\.(js|jsx|mjs)$"
    ],
    "moduleNameMapper": {
      "^react-native$": "react-native-web"
    },
    "moduleDirectories": [
      "node_modules",
      "src"
    ],
    "moduleFileExtensions": [
      "web.js",
      "mjs",
      "js",
      "json",
      "web.jsx",
      "jsx",
      "node"
    ]
  },
"devDependencies": {
    "babel-jest": "20.0.3",
    "jest": "^23.6.0",
    "jest-cli": "^23.6.0",
.
.
.
}

test.js

'use strict';

// Do this as the first thing so that any code reading it knows the right env.
process.env.BABEL_ENV = 'test';
process.env.NODE_ENV = 'test';
process.env.PUBLIC_URL = '';

// Makes the script crash on unhandled rejections instead of silently
// ignoring them. In the future, promise rejections that are not handled will
// terminate the Node.js process with a non-zero exit code.
process.on('unhandledRejection', err => {
  throw err;
});

// Ensure environment variables are read.
require('../config/env');

const jest = require('jest');
const argv = process.argv.slice(2);

// Watch unless on CI or in coverage mode
if (!process.env.CI && argv.indexOf('--coverage') < 0) {
  argv.push('--watch');
}


jest.run(argv);
...