2017-08-30 4 views
0

Je rencontre un problème avec un fichier test_helper qui fonctionne parfaitement bien. C'est un projet auquel je reviens après un certain temps. L'erreur et le fichier sont ci-dessous avec le package.json car je pense que c'est peut-être le compilateur qui cause le problème.Redux Test d'erreur de jeton inattendue

L'erreur

SyntaxError: /Users/mikewalters/Projects/video- 
frontend/test/test_helper.js: Unexpected token (20:4) 
18 | function renderComponent(ComponentClass, props = {}, state = {}) { 
19 | const componentInstance = TestUtils.renderIntoDocument(
> 20 |  <Provider store={createStore(reducers, state)}> 
    | ^
21 |  <ComponentClass {...props} /> 
22 |  </Provider> 
23 | ); 

Les test_helperjs

import _$ from 'jquery'; 
import React from 'react'; 
import ReactDOM from 'react-dom'; 
import TestUtils from 'react-addons-test-utils'; 
import jsdom from 'jsdom'; 
import chai, { expect } from 'chai'; 
import chaiJquery from 'chai-jquery'; 
import { Provider } from 'react-redux'; 
import { createStore } from 'redux'; 
import reducers from '../src/reducers'; 

global.document = jsdom.jsdom('<!doctype html><html><body></body></html>'); 
global.window = global.document.defaultView; 
const $ = _$(window); 

chaiJquery(chai, chai.util, $); 

function renderComponent(ComponentClass, props = {}, state = {}) { 
    const componentInstance = TestUtils.renderIntoDocument(
    <Provider store={createStore(reducers, state)}> 
     <ComponentClass {...props} /> 
    </Provider> 
); 

    return $(ReactDOM.findDOMNode(componentInstance)); 
} 

$.fn.simulate = function(eventName, value) { 
    if (value) { 
    this.val(value); 
    } 
    TestUtils.Simulate[eventName](this[0]); 
}; 

export {renderComponent, expect}; 
import _$ from 'jquery'; 
import React from 'react'; 
import ReactDOM from 'react-dom'; 
import TestUtils from 'react-addons-test-utils'; 
import jsdom from 'jsdom'; 
import chai, { expect } from 'chai'; 
import chaiJquery from 'chai-jquery'; 
import { Provider } from 'react-redux'; 
import { createStore } from 'redux'; 
import reducers from '../src/reducers'; 

global.document = jsdom.jsdom('<!doctype html><html><body></body></html>'); 
global.window = global.document.defaultView; 
const $ = _$(window); 

chaiJquery(chai, chai.util, $); 

function renderComponent(ComponentClass, props = {}, state = {}) { 
    const componentInstance = TestUtils.renderIntoDocument(
    <Provider store={createStore(reducers, state)}> 
     <ComponentClass {...props} /> 
    </Provider> 
); 

    return $(ReactDOM.findDOMNode(componentInstance)); 
} 

$.fn.simulate = function(eventName, value) { 
    if (value) { 
    this.val(value); 
    } 
    TestUtils.Simulate[eventName](this[0]); 
}; 

export {renderComponent, expect}; 

Le package.json

"scripts": { 
    "start": "node ./node_modules/webpack-dev-server/bin/webpack-dev-server.js", 
    "test": "mocha -r mock-local-storage --compilers js:babel-core/register --require ./test/test_helper.js --recursive ./test", 
    "test:watch": "npm run test -- --watch", 
    "coverage": "babel-node ./node_modules/.bin/isparta cover --include 'src/**/*.js*' _mocha" 
    }, 

Ces tests ont travaillé avant et le fait qu'il isnt même obtenir des tests Prête moi de croire que c'est quelque chose avec le compilateur ou le paquet qui a changé. Mais je n'ai pas été en mesure de trouver quelque chose en ligne sur le problème.

Répondre

0

Il me manquait un fichier .babelrc. Fini en ajoutant cela et il a commencé à travailler

{ 
"presets": [ "react","es2015","es2016","stage-0" ] 
}