2017-10-04 3 views
0

Zuerst möchte ich nur sagen, dass ich viel gesucht und versucht habe, bevor ich diese Frage gestellt habe und ich viele Simillar Themen sah, aber jemand gibt mir eine Antwort.Unerwarteter Token-Import beim Lauf Jest Test

Ich benutze reagieren, redux, redux-form, webpack, css-Module.

Und versuchen, mein Projekt zu testen, indem Scherz mit und ich bekomme diese Fehlermeldung:

C:\PROJECT\node_modules\redux-form\es\getFormValues.js:1

import createGetFormValues from './selectors/getFormValues';

^^^^^^ SyntaxError: Unexpected token import

denke ich, dass redux-Form nicht vor dem Test ES5 kompiliert wird.

Mein test.test.js wie folgt aussieht:

import React from 'react'; 
import {configure,render} from 'enzyme'; 
import Adapter from 'enzyme-adapter-react-15'; 

import TestComponent from '../../../components/TestComponent '; 

describe('TestComponent ',() => { 
    configure({adapter: new Adapter()}); 

    it('snapshot',() => { 
     expect(render(<TestComponent/>)).toMatchSnapshot(); 
    }); 
}); 

Meine .babaelrc config-Datei wie folgt aussieht:

{ 
    "presets": [ 
    "es2015", 
    "react" 
    ], 
    "plugins": [ 
    "transform-class-properties", 
    "transform-decorators", 
    "transform-object-rest-spread" 
    ] 
} 

Meine package.json Scherz Konfiguration wie folgt aussieht:

"jest": { 
    "collectCoverageFrom": [ 
     "PROJECT/**/*.{js}" 
    ], 
    "moduleNameMapper": { 
     "\\.(css|scss)$": "identity-obj-proxy" 
    } 
    } 

Wie soll ich das richtig konfigurieren, Scherz, keine Fehler zu haben?

+0

Ist diese Arbeit, wenn Sie innerhalb einer einfachen Inline-Komponente ersetzen. Fügen Sie beispielsweise eine HelloWorld-Komponente in test.test.js hinzu und prüfen Sie, ob dies gerendert wird. –

+0

Haben Sie einfach versucht, dieses Modul in die Jest-Datei zu importieren? – fungusanthrax

Antwort

0

Ich brauchte die Einfuhr von meiner Komponente aus zu ändern:

import getFormValuesfrom "redux-form\es\getFormValues"; 

zu

import { getFormValues} from "redux-form"