@@ -147,6 +147,12 @@ ruleTester.run(RULE_NAME, rule, {
147
147
querySomeElement('button')
148
148
` ,
149
149
} ,
150
+ {
151
+ code : `
152
+ // case: custom method not matching "findBy*" variant pattern
153
+ findSomeElement('button')
154
+ ` ,
155
+ } ,
150
156
{
151
157
settings : {
152
158
'testing-library/module' : 'test-utils' ,
@@ -167,6 +173,16 @@ ruleTester.run(RULE_NAME, rule, {
167
173
queryByRole('button')
168
174
` ,
169
175
} ,
176
+ {
177
+ settings : {
178
+ 'testing-library/module' : 'test-utils' ,
179
+ } ,
180
+ code : `
181
+ // case: built-in "findBy*" query not reported because custom module not imported
182
+ import { render } from 'other-module'
183
+ findByRole('button')
184
+ ` ,
185
+ } ,
170
186
{
171
187
settings : {
172
188
'testing-library/filename-pattern' : 'testing-library\\.js' ,
@@ -185,6 +201,15 @@ ruleTester.run(RULE_NAME, rule, {
185
201
queryByRole('button')
186
202
` ,
187
203
} ,
204
+ {
205
+ settings : {
206
+ 'testing-library/filename-pattern' : 'testing-library\\.js' ,
207
+ } ,
208
+ code : `
209
+ // case: built-in "findBy*" query not reported because custom filename doesn't match
210
+ findByRole('button')
211
+ ` ,
212
+ } ,
188
213
{
189
214
settings : {
190
215
'testing-library/module' : 'test-utils' ,
@@ -430,6 +455,13 @@ ruleTester.run(RULE_NAME, rule, {
430
455
` ,
431
456
errors : [ { line : 3 , column : 7 , messageId : 'queryByError' } ] ,
432
457
} ,
458
+ {
459
+ code : `
460
+ // case: built-in "findBy*" query reported without import (aggressive reporting)
461
+ findByRole('button')
462
+ ` ,
463
+ errors : [ { line : 3 , column : 7 , messageId : 'findByError' } ] ,
464
+ } ,
433
465
{
434
466
filename : 'MyComponent.spec.js' ,
435
467
code : `
@@ -445,6 +477,13 @@ ruleTester.run(RULE_NAME, rule, {
445
477
` ,
446
478
errors : [ { line : 3 , column : 7 , messageId : 'queryByError' } ] ,
447
479
} ,
480
+ {
481
+ code : `
482
+ // case: custom "findBy*" query reported without import (aggressive reporting)
483
+ findByIcon('search')
484
+ ` ,
485
+ errors : [ { line : 3 , column : 7 , messageId : 'findByError' } ] ,
486
+ } ,
448
487
{
449
488
settings : {
450
489
'testing-library/module' : 'test-utils' ,
@@ -458,13 +497,28 @@ ruleTester.run(RULE_NAME, rule, {
458
497
} ,
459
498
{
460
499
filename : 'MyComponent.spec.js' ,
500
+ settings : {
501
+ 'testing-library/module' : 'test-utils' ,
502
+ } ,
461
503
code : `
462
504
// case: built-in "queryBy*" query reported with custom module + Testing Library package import
463
- import { render } from '@testing-library/framework '
505
+ import { render } from '@testing-library/react '
464
506
queryByRole('button')
465
507
` ,
466
508
errors : [ { line : 4 , column : 7 , messageId : 'queryByError' } ] ,
467
509
} ,
510
+ {
511
+ filename : 'MyComponent.spec.js' ,
512
+ settings : {
513
+ 'testing-library/module' : 'test-utils' ,
514
+ } ,
515
+ code : `
516
+ // case: built-in "findBy*" query reported with custom module + Testing Library package import
517
+ import { render } from '@testing-library/react'
518
+ findByRole('button')
519
+ ` ,
520
+ errors : [ { line : 4 , column : 7 , messageId : 'findByError' } ] ,
521
+ } ,
468
522
{
469
523
settings : {
470
524
'testing-library/module' : 'test-utils' ,
@@ -478,13 +532,28 @@ ruleTester.run(RULE_NAME, rule, {
478
532
} ,
479
533
{
480
534
filename : 'MyComponent.spec.js' ,
535
+ settings : {
536
+ 'testing-library/module' : 'test-utils' ,
537
+ } ,
481
538
code : `
482
539
// case: built-in "queryBy*" query reported with custom module + custom module import
483
540
import { render } from 'test-utils'
484
541
queryByRole('button')
485
542
` ,
486
543
errors : [ { line : 4 , column : 7 , messageId : 'queryByError' } ] ,
487
544
} ,
545
+ {
546
+ filename : 'MyComponent.spec.js' ,
547
+ settings : {
548
+ 'testing-library/module' : 'test-utils' ,
549
+ } ,
550
+ code : `
551
+ // case: built-in "queryBy*" query reported with custom module + custom module import
552
+ import { render } from 'test-utils'
553
+ findByRole('button')
554
+ ` ,
555
+ errors : [ { line : 4 , column : 7 , messageId : 'findByError' } ] ,
556
+ } ,
488
557
489
558
{
490
559
settings : {
@@ -499,13 +568,28 @@ ruleTester.run(RULE_NAME, rule, {
499
568
} ,
500
569
{
501
570
filename : 'MyComponent.spec.js' ,
571
+ settings : {
572
+ 'testing-library/module' : 'test-utils' ,
573
+ } ,
502
574
code : `
503
575
// case: custom "queryBy*" query reported with custom module + Testing Library package import
504
576
import { render } from '@testing-library/framework'
505
577
queryByIcon('search')
506
578
` ,
507
579
errors : [ { line : 4 , column : 7 , messageId : 'queryByError' } ] ,
508
580
} ,
581
+ {
582
+ filename : 'MyComponent.spec.js' ,
583
+ settings : {
584
+ 'testing-library/module' : 'test-utils' ,
585
+ } ,
586
+ code : `
587
+ // case: custom "findBy*" query reported with custom module + Testing Library package import
588
+ import { render } from '@testing-library/framework'
589
+ findByIcon('search')
590
+ ` ,
591
+ errors : [ { line : 4 , column : 7 , messageId : 'findByError' } ] ,
592
+ } ,
509
593
{
510
594
settings : {
511
595
'testing-library/module' : 'test-utils' ,
@@ -519,13 +603,28 @@ ruleTester.run(RULE_NAME, rule, {
519
603
} ,
520
604
{
521
605
filename : 'MyComponent.spec.js' ,
606
+ settings : {
607
+ 'testing-library/module' : 'test-utils' ,
608
+ } ,
522
609
code : `
523
610
// case: custom "queryBy*" query reported with custom module + custom module import
524
611
import { render } from 'test-utils'
525
612
queryByIcon('search')
526
613
` ,
527
614
errors : [ { line : 4 , column : 7 , messageId : 'queryByError' } ] ,
528
615
} ,
616
+ {
617
+ filename : 'MyComponent.spec.js' ,
618
+ settings : {
619
+ 'testing-library/module' : 'test-utils' ,
620
+ } ,
621
+ code : `
622
+ // case: custom "findBy*" query reported with custom module + custom module import
623
+ import { render } from 'test-utils'
624
+ findByIcon('search')
625
+ ` ,
626
+ errors : [ { line : 4 , column : 7 , messageId : 'findByError' } ] ,
627
+ } ,
529
628
{
530
629
settings : {
531
630
'testing-library/module' : 'test-utils' ,
0 commit comments