New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

riot-testing-library

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

riot-testing-library

Simple and complete Riot testing utilities that encourage good testing practices.

  • 1.2.0
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
0
decreased by-100%
Maintainers
1
Weekly downloads
 
Created
Source

riot-testing-library

Actions Status NPM license codecov Maintainability

API

render

  • render({container, target, ...componentOptions}) => { container, unmount, rerender }: render method to mount a component which include your custom hook

    • container: The HTML element the component is mounted into.

      default : document.body

    • target: The HTML element the component is mounted.

      default : container.appendChild(document.createElement('div'))

    • componentOptions: The component props

Result
  • container: container
  • component: created riot component
  • render(options): method of rerender component
  • unmount(): method of unmount component
  • debug(): method of log current dom
  • ...queries: Returns all query functions that are binded to the target.

cleanup

Unmounts the component from the container and destroys the container.

cleanup() is called after each test automatically by default if the testing framework you're using supports the afterEach global (like mocha, Jest, and Jasmine).

However, you may choose to skip the auto cleanup by setting the RIOT_TL_SKIP_AUTO_CLEANUP env variable to 'true'.

To make this even easier, you can also simply import riot-testing-library/dont-cleanup-after-each which will do the same thing.

also export all api from @testing-library/dom

Demo

Component

<app>
  <p data-testid="count">{ state.count }</p>
  <button data-testid="button" onclick={add}>button</button>
  <script>
    export default {
      onBeforeMount(props) {
        this.state = {
          count: props.count || 0
        }
      },
      add() {
        this.update({ count: this.state.count + 1 })
      },
    }
  </script>
</app>

Test

import render, { fireEvent } from 'riot-testing-library'
import TestTag from './test.tag'

test('should show count text  when rendered', () => {
  const { queryByTestId } = render(TestTag, {count: 10});
  expect(queryByTestId('count').textContent).toBe("10");
})

test('should add count when click add button text', () => {
    const { queryByTestId } = render(TestTag, {count: 1});
    expect(queryByTestId('count').textContent).toBe("1");
    fireEvent.click(queryByTestId('button'))
    expect(queryByTestId('count').textContent).toBe("2");
})

FAQs

Package last updated on 14 Oct 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc