2017-08-30 192 views
0

我遇到了test_helper文件的问题,该文件用于非常好地工作。这是我一段时间后回来的一个项目。错误和文件与package.json一起,因为我怀疑它可能是编译器引起的问题。Redux测试意外令牌错误

的错误

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 | ); 

的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}; 

的的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" 
    }, 

这些测试之前工作过,事实上,它不是让,甚至在测试贷出我相信这是编译器或包改变了。但我一直无法在网上找到关于此问题的任何信息。

回答

0

我错过了一个.babelrc文件。结束加入并开始工作

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