@@ -176,6 +176,18 @@ ruleTester.run('destructuring-assignment', rule, {
176
176
] . join ( '\n' ) ,
177
177
options : [ 'always' , { ignoreClassFields : true } ] ,
178
178
parser : parsers . BABEL_ESLINT
179
+ } , {
180
+ code : `const MyComponent = (props) => {
181
+ const {foo} = useContext(aContext);
182
+ return <div>{foo}</div>
183
+ };` ,
184
+ options : [ 'always' ]
185
+ } , {
186
+ code : `const MyComponent = (props) => {
187
+ const foo = useContext(aContext);
188
+ return <div>{foo.test}</div>
189
+ };` ,
190
+ options : [ 'never' ]
179
191
} ] ,
180
192
181
193
invalid : [ {
@@ -193,14 +205,6 @@ ruleTester.run('destructuring-assignment', rule, {
193
205
errors : [
194
206
{ message : 'Must never use destructuring props assignment in SFC argument' }
195
207
]
196
- } , {
197
- code : `const MyComponent = (props, { color }) => (
198
- <div id={props.id} className={props.className} />
199
- );` ,
200
- options : [ 'never' ] ,
201
- errors : [
202
- { message : 'Must never use destructuring context assignment in SFC argument' }
203
- ]
204
208
} , {
205
209
code : `const Foo = class extends React.PureComponent {
206
210
render() {
@@ -314,5 +318,23 @@ ruleTester.run('destructuring-assignment', rule, {
314
318
errors : [
315
319
{ message : 'Must never use destructuring state assignment' }
316
320
]
321
+ } , {
322
+ code : `const MyComponent = (props) => {
323
+ const foo = useContext(aContext);
324
+ return <div>{foo.test}</div>
325
+ };` ,
326
+ options : [ 'always' ] ,
327
+ errors : [
328
+ { message : 'Must use destructuring foo assignment' }
329
+ ]
330
+ } , {
331
+ code : `const MyComponent = (props) => {
332
+ const {foo} = useContext(aContext);
333
+ return <div>{foo}</div>
334
+ };` ,
335
+ options : [ 'never' ] ,
336
+ errors : [
337
+ { message : 'Must never use destructuring useContext assignment' }
338
+ ]
317
339
} ]
318
340
} ) ;
0 commit comments