@@ -12,6 +12,7 @@ ruleTester.run(RULE_NAME, rule, {
12
12
valid : [
13
13
{
14
14
code : `
15
+ import { render } from '@testing-library/foo';
15
16
it('Test', () => {
16
17
render(<Component/>)
17
18
})
@@ -20,6 +21,7 @@ ruleTester.run(RULE_NAME, rule, {
20
21
// test config options
21
22
...TESTING_FRAMEWORK_SETUP_HOOKS . map ( setupHook => ( {
22
23
code : `
24
+ import { renderWithRedux } from '../test-utils';
23
25
${ setupHook } (() => {
24
26
renderWithRedux(<Component/>)
25
27
})
@@ -31,19 +33,44 @@ ruleTester.run(RULE_NAME, rule, {
31
33
} ,
32
34
] ,
33
35
} ) ) ,
34
- // // test usage of a non-Testing Library render fn
35
- // ...TESTING_FRAMEWORK_SETUP_HOOKS.map(setupHook => ({
36
- // code: `import { render } from 'imNoTestingLibrary';
37
-
38
- // ${setupHook}(() => {
39
- // render(<Component/>)
40
- // })`,
41
- // })),
36
+ // test usage of a non-Testing Library render fn
37
+ ...TESTING_FRAMEWORK_SETUP_HOOKS . map ( setupHook => ( {
38
+ code : `
39
+ import { render } from 'imNoTestingLibrary';
40
+ ${ setupHook } (() => {
41
+ render(<Component/>)
42
+ })
43
+ ` ,
44
+ } ) ) ,
45
+ ...TESTING_FRAMEWORK_SETUP_HOOKS . map ( allowedSetupHook => {
46
+ const [ disallowedHook ] = TESTING_FRAMEWORK_SETUP_HOOKS . filter (
47
+ setupHook => setupHook !== allowedSetupHook
48
+ ) ;
49
+ return {
50
+ code : `
51
+ import utils from 'imNoTestingLibrary';
52
+ import { renderWithRedux } from '../test-utils';
53
+ ${ allowedSetupHook } (() => {
54
+ renderWithRedux(<Component/>)
55
+ })
56
+ ${ disallowedHook } (() => {
57
+ utils.render(<Component/>)
58
+ })
59
+ ` ,
60
+ options : [
61
+ {
62
+ allowTestingFrameworkSetupHook : allowedSetupHook ,
63
+ renderFunctions : [ 'renderWithRedux' ] ,
64
+ } ,
65
+ ] ,
66
+ } ;
67
+ } ) ,
42
68
] ,
43
69
44
70
invalid : [
45
71
...TESTING_FRAMEWORK_SETUP_HOOKS . map ( setupHook => ( {
46
72
code : `
73
+ import { render } from '@testing-library/foo';
47
74
${ setupHook } (() => {
48
75
render(<Component/>)
49
76
})
@@ -56,6 +83,7 @@ ruleTester.run(RULE_NAME, rule, {
56
83
} ) ) ,
57
84
...TESTING_FRAMEWORK_SETUP_HOOKS . map ( setupHook => ( {
58
85
code : `
86
+ import { render } from '@testing-library/foo';
59
87
${ setupHook } (function() {
60
88
render(<Component/>)
61
89
})
@@ -69,6 +97,7 @@ ruleTester.run(RULE_NAME, rule, {
69
97
// custom render function
70
98
...TESTING_FRAMEWORK_SETUP_HOOKS . map ( setupHook => ( {
71
99
code : `
100
+ import { renderWithRedux } from '../test-utils';
72
101
${ setupHook } (() => {
73
102
renderWithRedux(<Component/>)
74
103
})
@@ -87,6 +116,7 @@ ruleTester.run(RULE_NAME, rule, {
87
116
// call render within a wrapper function
88
117
...TESTING_FRAMEWORK_SETUP_HOOKS . map ( setupHook => ( {
89
118
code : `
119
+ import { render } from '@testing-library/foo';
90
120
${ setupHook } (() => {
91
121
const wrapper = () => {
92
122
render(<Component/>)
@@ -106,10 +136,11 @@ ruleTester.run(RULE_NAME, rule, {
106
136
) ;
107
137
return {
108
138
code : `
109
- ${ disallowedHook } (() => {
110
- render(<Component/>)
111
- })
112
- ` ,
139
+ import { render } from '@testing-library/foo';
140
+ ${ disallowedHook } (() => {
141
+ render(<Component/>)
142
+ })
143
+ ` ,
113
144
options : [
114
145
{
115
146
allowTestingFrameworkSetupHook : allowedSetupHook ,
@@ -123,46 +154,48 @@ ruleTester.run(RULE_NAME, rule, {
123
154
} ;
124
155
} ) ,
125
156
...TESTING_FRAMEWORK_SETUP_HOOKS . map ( setupHook => ( {
126
- code : `import { render } from '@testing-library/foo';
127
-
128
- ${ setupHook } (() => {
129
- render(<Component/>)
130
- })` ,
157
+ code : `
158
+ import * as testingLibrary from '@testing-library/foo';
159
+ ${ setupHook } (() => {
160
+ testingLibrary.render(<Component/>)
161
+ })
162
+ ` ,
131
163
errors : [
132
164
{
133
165
messageId : 'noRenderInSetup' ,
134
166
} ,
135
167
] ,
136
168
} ) ) ,
137
169
...TESTING_FRAMEWORK_SETUP_HOOKS . map ( setupHook => ( {
138
- code : `import * as testingLibrary from '@testing-library/foo';
139
-
140
- ${ setupHook } (() => {
141
- testingLibrary.render(<Component/>)
142
- })` ,
170
+ code : `
171
+ import { render } from 'imNoTestingLibrary';
172
+ import * as testUtils from '../test-utils';
173
+ ${ setupHook } (() => {
174
+ testUtils.renderWithRedux(<Component/>)
175
+ })
176
+ it('Test', () => {
177
+ render(<Component/>)
178
+ })
179
+ ` ,
180
+ options : [
181
+ {
182
+ renderFunctions : [ 'renderWithRedux' ] ,
183
+ } ,
184
+ ] ,
143
185
errors : [
144
186
{
145
187
messageId : 'noRenderInSetup' ,
146
188
} ,
147
189
] ,
148
190
} ) ) ,
149
191
...TESTING_FRAMEWORK_SETUP_HOOKS . map ( setupHook => ( {
150
- code : `import { render } from 'imNoTestingLibrary';
151
- import * as testUtils from '../utils';
152
-
153
- ${ setupHook } (() => {
154
- testUtils.renderWithRedux(<Component/>)
155
- })
192
+ code : `
193
+ const { render } = require('@testing-library/foo')
156
194
157
- it('Test', () => {
158
- render(<Component/>)
159
- })
195
+ ${ setupHook } ( () => {
196
+ render(<Component/>)
197
+ })
160
198
` ,
161
- options : [
162
- {
163
- renderFunctions : [ 'renderWithRedux' ] ,
164
- } ,
165
- ] ,
166
199
errors : [
167
200
{
168
201
messageId : 'noRenderInSetup' ,
0 commit comments