Git Product home page Git Product logo

react-test-render's Introduction

React Test Render Utils

Example Usage

import { createRenderer } from 'react-test-render'
import MyComponent from './my-component'
import MyComponentItem from './my-component-item'

test(() => {
  const serviceAbc = new ServiceAbc()
  const renderer = reactTestRender.createRenderer(MyComponent, {
    serviceAbc
  })

  let myComponent = renderer.render({ x: 123 })
  expect(myComponent.props.x).to.be(123)

  serviceAbc.setItemsInTest([ 1, 2, 3 ])
  let itemComponents = renderer.getChildrenOfType(MyComponentItem)
  expect(itemComponents).to.have.length(3)
})

API

reactTestRender.createRenderer(ComponentType, context) -> TestRenderer

# Rerenders and returns the current rendering.
TestRenderer#render(props) -> Component

# Returns the current rendering without rerendering.
TestRenderer#getRendering() -> Component

# Collects the children of the provided component or the root one.
TestRenderer#getChildren(parentComponent) -> [ Component ]
TestRenderer#getChildren() -> [ Component ]
TestRenderer#getChildrenOfType(ComponentType, parentComponent) -> [ Component ]
TestRenderer#getChildrenOfType(tagName, parentComponent) -> [ Component ]
TestRenderer#getChildrenOfType(ComponentType) -> [ Component ]
TestRenderer#getChildrenOfType(tagName) -> [ Component ]
TestRenderer#getChildrenOfClass(className, parentComponent) -> [ Component ]
TestRenderer#getChildrenOfClass(className) -> [ Component ]

# Returns the first child component if present
TestRenderer#getChildOfType(ComponentType, parentComponent) -> Component | null
TestRenderer#getChildOfType(tagName, parentComponent) -> Component | null
TestRenderer#getChildOfType(ComponentType) -> Component | null
TestRenderer#getChildOfType(tagName) -> Component | null
TestRenderer#getChildOfClass(className, parentComponent) -> Component | null
TestRenderer#getChildOfClass(className) -> Component | null

# Returns the whole text content of the provided component or the root one.
TestRenderer#getTextContent(component) -> string
TestRenderer#getTextContent() -> string

react-test-render's People

Contributors

jankuca avatar jakubzitny avatar janluxemburk avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.