forked from testing-library/react-testing-library
/
test.tsx
70 lines (56 loc) 路 1.5 KB
/
test.tsx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
import * as React from 'react'
import {render, fireEvent, screen, waitFor} from '@testing-library/react'
import * as pure from '@testing-library/react/pure'
async function testRender() {
const page = render(<div />)
// single queries
page.getByText('foo')
page.queryByText('foo')
await page.findByText('foo')
// multiple queries
page.getAllByText('bar')
page.queryAllByText('bar')
await page.findAllByText('bar')
// helpers
const {container, rerender, debug} = page
}
async function testPureRender() {
const page = pure.render(<div />)
// single queries
page.getByText('foo')
page.queryByText('foo')
await page.findByText('foo')
// multiple queries
page.getAllByText('bar')
page.queryAllByText('bar')
await page.findAllByText('bar')
// helpers
const {container, rerender, debug} = page
}
async function testRenderOptions() {
const container = document.createElement('div')
const options = {container}
render(<div />, options)
}
async function testFireEvent() {
const {container} = render(<button />)
fireEvent.click(container)
}
async function testDebug() {
const {debug, getAllByTestId} = render(
<>
<h2 data-testid="testid">Hello World</h2>
<h2 data-testid="testid">Hello World</h2>
</>,
)
debug(getAllByTestId('testid'))
}
async function testScreen() {
render(<button />)
screen.findByRole('button')
}
async function testWaitFor() {
const {container} = render(<button />)
fireEvent.click(container)
await waitFor(() => {})
}