带有“jest”的Blueprintjs不起作用

时间:2017-05-15 23:05:28

标签: typescript jestjs enzyme blueprintjs

我有一个非常简单的测试。

在我的package.json中,它看起来像这样

"jest": {
  "transform": {
    ".(ts|tsx)": "<rootDir>/node_modules/ts-jest/preprocessor.js"
  },
"testRegex": "(/__tests__/.*|\\.(test|spec))\\.(ts|tsx|js)$",
"moduleFileExtensions": [
  "ts",
  "tsx",
  "js"
],
"globals": {
  "__TS_CONFIG__": "./tsconfig.json"
}
}

我的测试看起来像这样。

import * as React from "react";
import {} from "jest";
import { shallow } from "enzyme";
jest.unmock('classnames')
jest.unmock('../src/browser/browser');
import { Browser } from "../src/browser";


describe("Browser tests", function() {
  test("test the browser loads", () => {
    expect(3).toBe(3);
    expect(shallow(<Browser />).contains(<div className="foo" 
  />)).toBe(true);
});
});

我收到此错误

/Users/..../node_modules/@blueprintjs/core/src/components/non-ideal-state/nonIdealState.tsx:8`
import * as classNames from "classnames";
^^^^^^
SyntaxError: Unexpected token import

  at ScriptTransformer._transformAndBuildScript (node_modules/jest-runtime/build/ScriptTransformer.js:290:17)

我做错了什么?任何帮助将不胜感激

我正在使用 jest- 20.0.1 enzyme-2.8.2 ts-jest-20.0.3 blueprint-core 1.16.0

1 个答案:

答案 0 :(得分:1)

问题出在我从blueprintjs/core/src模块导入的其中一个组件上。我脱掉了它,它起作用了。