jest-styled-jsx-transformer

1.1.0 • Public • Published

jest-styled-jsx-transformer

A Jest transformer using the styled-jsx/webpack loader under the hood to include external CSS files in a Jest testing environment such that their styles can be rendered using a <style jsx> tag.

Build Status Test Coverage

Installation

// with npm
npm i --save-dev jest-styled-jsx-transformer

// with yarn
yarn add --dev jest-styled-jsx-transformer

Configuration

Jest config

Add the transform option to your Jest config file and specify jest-styled-jsx-transformer as the transformer for CSS files. Make sure to also specify the transformer for your Javascript files because by adding the transform option the defaults get overriden.

// jest.config.js
module.exports = {
    transform: {
        '^.+\\.css$': 'jest-styled-jsx-transformer',
        '^.+\\.(t|j)sx?': 'babel-jest'
    }
}

Babel config

Add @babel/preset-env to the list of babel presets and set its modules option to commonjs. Make sure you add styled-jsx/babel to the list of babel plugins and not styled-jsx/babel-test.

// .babelrc
{
    "env": {
        "test": {
            "presets": ["@babel/preset-env", {"modules": "commonjs"}],
            "plugins": ["styled-jsx/babel"]
        }
    }
}

Package Sidebar

Install

npm i jest-styled-jsx-transformer

Weekly Downloads

28

Version

1.1.0

License

GPL-3.0-or-later

Unpacked Size

38.4 kB

Total Files

4

Last publish

Collaborators

  • befeepilf