Subscribed unsubscribe Subscribe Subscribe

Jestでcontextを使うヘ(^o^)ノ

Environment

Jest 18.1.0

Jestでは context が使えません、、

github.com

なので、使えるようにしてみましょう。

とはいっても、contextはdescribeのエイリアスです。

global変数を定義してみましょうヘ(^o^)ノ

// setupTestFramework.js
global.context = describe

このsetupファイルをテストを実行前にloadします

// package.json
"jest": {
  "setupTestFrameworkScriptFile": "./setupTestFramework"
}
// App.spec.js
import React from 'react'
import renderer from 'react-test-renderer'

import App from '../../client/components/App'

describe('<App />', () => {
  let tree

  context("when naem is 'Jest'", () => {
    const component = renderer.create(
      <App name='Jest' />
    )

    it("should display 'Hello Jest'", () => {
      tree = component.toJSON()
      expect(tree).toMatchSnapshot()
    })
  })
})
$ yarn test

 PASS  __tests__/components/App.spec.js
  <App />
    when naem is 'Jest'
      ✓ should display 'Hello Jest' (4ms)
    when naem is 'React'
      ✓ should display 'Hello Jest' (1ms)

Test Suites: 1 passed, 1 total
Tests:       2 passed, 2 total
Snapshots:   2 passed, 2 total
Time:        1.164s
Ran all test suites.

contextが使えるようになりましたー

Happy Hacking٩( ‘ω’ )و