@@ -116,6 +116,111 @@ ruleTester.run('no-multi-comp', rule, {
116
116
options : [ {
117
117
ignoreStateless : true
118
118
} ]
119
+ } , {
120
+ code : `
121
+ class StoreListItem extends React.PureComponent {
122
+ // A bunch of stuff here
123
+ }
124
+ export default React.forwardRef((props, ref) => <StoreListItem {...props} forwardRef={ref} />);
125
+ ` ,
126
+ options : [ {
127
+ ignoreStateless : false
128
+ } ]
129
+ } , {
130
+ code : `
131
+ class StoreListItem extends React.PureComponent {
132
+ // A bunch of stuff here
133
+ }
134
+ export default React.forwardRef((props, ref) => {
135
+ return <StoreListItem {...props} forwardRef={ref} />
136
+ });
137
+ ` ,
138
+ options : [ {
139
+ ignoreStateless : false
140
+ } ]
141
+ } , {
142
+ code : `
143
+ const HelloComponent = (props) => {
144
+ return <div></div>;
145
+ }
146
+ export default React.forwardRef((props, ref) => <HelloComponent {...props} forwardRef={ref} />);
147
+ ` ,
148
+ options : [ {
149
+ ignoreStateless : false
150
+ } ]
151
+ } , {
152
+ code : `
153
+ class StoreListItem extends React.PureComponent {
154
+ // A bunch of stuff here
155
+ }
156
+ export default React.forwardRef(
157
+ function myFunction(props, ref) {
158
+ return <StoreListItem {...props} forwardedRef={ref} />;
159
+ }
160
+ );
161
+ ` ,
162
+ options : [ {
163
+ ignoreStateless : false
164
+ } ]
165
+ } , {
166
+ code : `
167
+ class StoreListItem extends React.PureComponent {
168
+ // A bunch of stuff here
169
+ }
170
+ export default React.forwardRef((props, ref) => <StoreListItem {...props} forwardRef={ref} />);
171
+ ` ,
172
+ options : [ {
173
+ ignoreStateless : true
174
+ } ]
175
+ } , {
176
+ code : `
177
+ class StoreListItem extends React.PureComponent {
178
+ // A bunch of stuff here
179
+ }
180
+ export default React.forwardRef((props, ref) => {
181
+ return <StoreListItem {...props} forwardRef={ref} />
182
+ });
183
+ ` ,
184
+ options : [ {
185
+ ignoreStateless : true
186
+ } ]
187
+ } , {
188
+ code : `
189
+ const HelloComponent = (props) => {
190
+ return <div></div>;
191
+ }
192
+ export default React.forwardRef((props, ref) => <HelloComponent {...props} forwardRef={ref} />);
193
+ ` ,
194
+ options : [ {
195
+ ignoreStateless : true
196
+ } ]
197
+ } , {
198
+ code : `
199
+ const HelloComponent = (props) => {
200
+ return <div></div>;
201
+ }
202
+ class StoreListItem extends React.PureComponent {
203
+ // A bunch of stuff here
204
+ }
205
+ export default React.forwardRef(
206
+ function myFunction(props, ref) {
207
+ return <StoreListItem {...props} forwardedRef={ref} />;
208
+ }
209
+ );
210
+ ` ,
211
+ options : [ {
212
+ ignoreStateless : true
213
+ } ]
214
+ } , {
215
+ code : `
216
+ const HelloComponent = (props) => {
217
+ return <div></div>;
218
+ }
219
+ export default React.memo((props, ref) => <HelloComponent {...props} />);
220
+ ` ,
221
+ options : [ {
222
+ ignoreStateless : false
223
+ } ]
119
224
} ] ,
120
225
121
226
invalid : [ {
@@ -207,5 +312,50 @@ ruleTester.run('no-multi-comp', rule, {
207
312
message : 'Declare only one React component per file' ,
208
313
line : 6
209
314
} ]
315
+ } , {
316
+ code : `
317
+ class StoreListItem extends React.PureComponent {
318
+ // A bunch of stuff here
319
+ }
320
+ export default React.forwardRef((props, ref) => <div><StoreListItem {...props} forwardRef={ref} /></div>);
321
+ ` ,
322
+ options : [ {
323
+ ignoreStateless : false
324
+ } ] ,
325
+ parser : parsers . BABEL_ESLINT ,
326
+ errors : [ {
327
+ message : 'Declare only one React component per file' ,
328
+ line : 5
329
+ } ]
330
+ } , {
331
+ code : `
332
+ const HelloComponent = (props) => {
333
+ return <div></div>;
334
+ }
335
+ const HelloComponent2 = React.forwardRef((props, ref) => <div></div>);
336
+ ` ,
337
+ options : [ {
338
+ ignoreStateless : false
339
+ } ] ,
340
+ parser : parsers . BABEL_ESLINT ,
341
+ errors : [ {
342
+ message : 'Declare only one React component per file' ,
343
+ line : 5
344
+ } ]
345
+ } , {
346
+ code : `
347
+ const HelloComponent = (0, (props) => {
348
+ return <div></div>;
349
+ });
350
+ const HelloComponent2 = React.forwardRef((props, ref) => <><HelloComponent></HelloComponent></>);
351
+ ` ,
352
+ options : [ {
353
+ ignoreStateless : false
354
+ } ] ,
355
+ parser : parsers . BABEL_ESLINT ,
356
+ errors : [ {
357
+ message : 'Declare only one React component per file' ,
358
+ line : 5
359
+ } ]
210
360
} ]
211
361
} ) ;
0 commit comments