rut
rut
npm i rut
rut

rut

⚛️ React testing made easy. Supports DOM and custom renderers.

by Miles Johnson

2.0.0 (see all)License:MITTypeScript:Built-In
npm i rut
Readme

Rut

Build Status npm version npm deps

Rut is a DOM-less React testing library that aims to be lightweight, encourage great testing practices, and reduce flakiness and code smells. It is a wrapper and abstraction around react-test-renderer that simplifies the test writing process, while doing all the hard work behind the scenes.

This package provides core functionality for adapters to expand upon. For example, a DOM adapter for react-dom, a mobile native adapter for react-native, or even a custom adapter unique to your application.

Features

  • Type safe by design. Test with confidence.
  • First-class async support. Wait for async calls to finish before returning a rendered result. (Experimental)
  • Deep act() integration. Let Rut do the heavy lifting.
  • Update a component with new props, children, or a completely new element.
  • Unmount a component to verify cleanup and destructor based logic.
  • Dispatch DOM level events with a mocked synthetic event (and propagation coming soon!).
  • Wrap all renders with a defined wrapping component and or React.StrictMode.
  • Apply pre-built mocks for robust and accurate testing.
  • Utilize an array of pre-built matchers for easily querying, expecting, and asserting.

Requirements

  • React 16.9+ (Rut v1)
  • React 17+ (Rut v2)

Installation

yarn add --dev rut react

Documentation

https://milesj.gitbook.io/rut

Downloads/wk

24

GitHub Stars

15

LAST COMMIT

2yrs ago

MAINTAINERS

1

CONTRIBUTORS

3

OPEN ISSUES

3

OPEN PRs

25
VersionTagPublished
2.0.0
latest
2yrs ago
No alternatives found
No tutorials found
Add a tutorial

Rate & Review

100
No reviews found
Be the first to rate