@@ -31,65 +31,73 @@ make your test util file accessible without using relative paths.
31
31
The example below sets up data providers using the [ ` wrapper ` ] ( api.mdx#wrapper )
32
32
option to ` render ` .
33
33
34
+ ``` diff title="my-component.test.js"
35
+ - import { render, fireEvent } from '@testing-library/react';
36
+ + import { render, fireEvent } from '../test-utils';
37
+ ```
38
+
34
39
<Tabs groupId = " test-utils" defaultValue = " js" values = { [ {label: ' Javascript' ,
35
- value: ' js' }, {label: ' Typescript' , value: ' tsx' }, ]} > <TabItem value = " js" >
36
-
37
- ``` jsx title="test-utils.js"
38
- import React from ' react'
39
- import { render } from ' @testing-library/react'
40
- import { ThemeProvider } from ' my-ui-lib'
41
- import { TranslationProvider } from ' my-i18n-lib'
42
- import defaultStrings from ' i18n/en-x-default'
43
-
44
- const AllTheProviders = ({ children }) => {
45
- return (
46
- < ThemeProvider theme= " light" >
47
- < TranslationProvider messages= {defaultStrings}>
48
- {children}
49
- < / TranslationProvider>
50
- < / ThemeProvider>
51
- )
52
- }
40
+ value: ' jsx' }, {label: ' Typescript' , value: ' tsx' }, ]} >
53
41
54
- const customRender = (ui , options ) =>
55
- render (ui, { wrapper: AllTheProviders, ... options })
42
+ <TabItem value = " jsx" >
56
43
57
- // re-export everything
58
- export * from ' @testing-library/react'
44
+ ``` jsx title="test-utils.js"
45
+ import React from ' react'
46
+ import { render } from ' @testing-library/react'
47
+ import { ThemeProvider } from ' my-ui-lib'
48
+ import { TranslationProvider } from ' my-i18n-lib'
49
+ import defaultStrings from ' i18n/en-x-default'
59
50
60
- // override render method
61
- export { customRender as render }
62
- ```
51
+ const AllTheProviders = ({ children }) => {
52
+ return (
53
+ < ThemeProvider theme= " light" >
54
+ < TranslationProvider messages= {defaultStrings}>
55
+ {children}
56
+ < / TranslationProvider>
57
+ < / ThemeProvider>
58
+ )
59
+ }
63
60
64
- </ TabItem >
65
- < TabItem value = " tsx " >
61
+ const customRender = ( ui , options ) = >
62
+ render (ui, { wrapper : AllTheProviders, ... options })
66
63
67
- ``` tsx title="test-utils.tsx"
68
- import React , { FC } from ' react'
69
- import { render } from ' @testing-library/react'
70
- import { ThemeProvider } from ' my-ui-lib'
71
- import { TranslationProvider } from ' my-i18n-lib'
72
- import defaultStrings from ' i18n/en-x-default'
73
-
74
- const AllTheProviders: FC = ({ children }) => {
75
- return (
76
- <ThemeProvider theme = " light" >
77
- <TranslationProvider messages = { defaultStrings } >
78
- { children }
79
- </TranslationProvider >
80
- </ThemeProvider >
81
- )
82
- }
64
+ // re-export everything
65
+ export * from ' @testing-library/react'
83
66
84
- const customRender = (
85
- ui : ReactElement ,
86
- options ? : Omit <RenderOptions , ' queries' >
87
- ) => render (ui , { wrapper: AllTheProviders , ... options })
67
+ // override render method
68
+ export { customRender as render }
69
+ ```
88
70
89
- export * from ' @testing-library/react '
71
+ </ TabItem >
90
72
91
- export { customRender as render }
92
- ```
73
+ <TabItem value = " tsx" >
74
+
75
+ ``` tsx title="test-utils.tsx"
76
+ import React , { FC } from ' react'
77
+ import { render } from ' @testing-library/react'
78
+ import { ThemeProvider } from ' my-ui-lib'
79
+ import { TranslationProvider } from ' my-i18n-lib'
80
+ import defaultStrings from ' i18n/en-x-default'
81
+
82
+ const AllTheProviders: FC = ({ children }) => {
83
+ return (
84
+ <ThemeProvider theme = " light" >
85
+ <TranslationProvider messages = { defaultStrings } >
86
+ { children }
87
+ </TranslationProvider >
88
+ </ThemeProvider >
89
+ )
90
+ }
91
+
92
+ const customRender = (
93
+ ui : ReactElement ,
94
+ options ? : Omit <RenderOptions , ' queries' >
95
+ ) => render (ui , { wrapper: AllTheProviders , ... options })
96
+
97
+ export * from ' @testing-library/react'
98
+
99
+ export { customRender as render }
100
+ ```
93
101
94
102
</TabItem >
95
103
</Tabs >
0 commit comments