1.2.2 • Published 6 years ago

riot-enzyme v1.2.2

Weekly downloads
2
License
MIT
Repository
github
Last release
6 years ago

Riot-enzyme

Riot-enzyme is a powerful testing utility to test tags of Riot.

Shallow-rendering is provided by Riot-shallowize including the limitation about transclusions.

It is under development, and now virtually following Riot-test-util, that is strongly recommended.

Features

  • Shallow rendering
  • Finding with CSS selectors
  • Snapshot testing

It is a thin wrapper of Enzyme. Please note shallow-rendering needs DOM.

Installation

npm install --save-dev riot-enzyme

Usage

Load as:

// es5
var shallow = require('react').shallow;

// es6
import { shallow } from 'riot-enzyme';

Shallow rendering as:

var tag = '<tag><p>{opts.data}</p></tag>';

var wrapper = shallow(tag, { data: 'Hello, world!'});

Test with jest for example:

// Opts are passed
expect(wrapper.opts()).toEqual({data: 'Hello, world!'});

// Only one <p> inside <tag>, which contains the text.
expect(wrapper.find('p').text()).toBe('Hello, world!');

And test snapshot:

expect(wrapper.toJson())).toMatchSnapshot();

WARNING: Currently, toJson() emits all the attributes as-is, including members of opts and data-is.

Specify a name for multiple tags as:

var tags = `
<inner>
  <p>{opts.data}</p>
</inner>
<outer>
  <inner data={opts.innerData} />
</outer>
`;

var wrapper = shallow(tags, 'outer', { innerData: 'Hello, world'});

shallow() constructs shallow tree "<outer><inner data="Hello, world"></inner></outer>" rather than "<outer><inner><p>Hello, world</p></inner></outer>", keeping your tags highly independent and requiring single root tag definition in most cases.

1.2.2

6 years ago

1.2.0

6 years ago

1.1.1

6 years ago

1.1.0

6 years ago

1.0.0

6 years ago

1.0.0-2

6 years ago

1.0.0-1

6 years ago

0.2.1

6 years ago

0.2.0

6 years ago

0.1.5

6 years ago

0.1.3

6 years ago

0.1.2

6 years ago

0.1.1

6 years ago

0.1.0

6 years ago