Sha256: 0466d3a4a6235425d33d2483c55ae526e3d4e396d7fd77583238d0a6d1dc9e8b

Contents?: true

Size: 1.27 KB

Versions: 139

Compression:

Stored size: 1.27 KB

Contents

/* This file provides the base for tests */

import React from 'react'
import { render, screen } from '@testing-library/react'
import '@testing-library/jest-dom/extend-expect'

// Accessbility
import { axe, toHaveNoViolations } from 'jest-axe'
expect.extend(toHaveNoViolations)

/*
  We can complicate this wrapper as needed.
  https://testing-library.com/docs/react-testing-library/setup
*/
// eslint-disable-next-line react/prop-types
const TestApp = ({ children }) => {
  return (
    <>
      { children }
    </>
  )
}

const customRender = (ui, options) =>
  render(ui, { wrapper: TestApp, ...options })

export * from '@testing-library/react'
export { customRender as render }

export const renderKit = (Kit, props = {}, newProps = {}) => {
  const kitProps = { ...props, ...newProps }
  render(<Kit {...kitProps} />)
  return screen.getByTestId(kitProps.data.testid)
}

export const ensureAccessible = async (Kit, props = {}, newProps = {}) => {
  const kitProps = { ...props, ...newProps }
  const render = () => <Kit {...kitProps} />
  const html = render()
  expect(await axe(html)).toHaveNoViolations()
}

export const appendAlert = (message) => {
  const alertNode = document.createElement('div')
  alertNode.innerHTML = message
  document.querySelector('body').appendChild(alertNode)
}

Version data entries

139 entries across 139 versions & 1 rubygems

Version Path
playbook_ui-10.26.0.pre.rc1 app/pb_kits/playbook/utilities/test-utils.js
playbook_ui-10.26.0.pre.alpha.sticky1 app/pb_kits/playbook/utilities/test-utils.js
playbook_ui-10.26.0.pre.alpha.display1 app/pb_kits/playbook/utilities/test-utils.js
playbook_ui-10.26.0.pre.alpha3 app/pb_kits/playbook/utilities/test-utils.js
playbook_ui-10.25.1 app/pb_kits/playbook/utilities/test-utils.js
playbook_ui-10.26.0.pre.alpha1 app/pb_kits/playbook/utilities/test-utils.js
playbook_ui-10.25.0 app/pb_kits/playbook/utilities/test-utils.js
playbook_ui-10.25.0.pre.alpha3 app/pb_kits/playbook/utilities/test-utils.js
playbook_ui-10.25.0.pre.treeshaking1 app/pb_kits/playbook/utilities/test-utils.js
playbook_ui-10.24.0 app/pb_kits/playbook/utilities/test-utils.js
playbook_ui-10.24.0.pre.alpha1 app/pb_kits/playbook/utilities/test-utils.js
playbook_ui-10.23.0 app/pb_kits/playbook/utilities/test-utils.js
playbook_ui-10.23.0.pre.alpha2 app/pb_kits/playbook/utilities/test-utils.js
playbook_ui-10.23.0.pre.cachetest app/pb_kits/playbook/utilities/test-utils.js
playbook_ui-10.23.0.pre.alpha1 app/pb_kits/playbook/utilities/test-utils.js
playbook_ui-10.22.1 app/pb_kits/playbook/utilities/test-utils.js
playbook_ui-10.22.0 app/pb_kits/playbook/utilities/test-utils.js
playbook_ui-10.21.1.pre.alpha1 app/pb_kits/playbook/utilities/test-utils.js
playbook_ui-10.21.0.pre.alpha.lightbox.2 app/pb_kits/playbook/utilities/test-utils.js
playbook_ui-10.21.0 app/pb_kits/playbook/utilities/test-utils.js