@@ -20,12 +20,22 @@ const ruleTester = new TSESLint.RuleTester({
20
20
21
21
const fixtureFilename = path . join ( rootPath , 'file.ts' ) ;
22
22
23
- const addFixtureFilename = (
24
- code : TSESLint . ValidTestCase < unknown [ ] > | string ,
25
- ) : TSESLint . ValidTestCase < unknown [ ] > => {
26
- const test = typeof code === 'string' ? { code } : code ;
27
-
28
- return { filename : fixtureFilename , ...test } ;
23
+ const withFixtureFilename = <
24
+ T extends Array <
25
+ | ( TSESLint . ValidTestCase < Options > | string )
26
+ | TSESLint . InvalidTestCase < MessageIds , Options >
27
+ > ,
28
+ > (
29
+ cases : T ,
30
+ ) : T extends Array < TSESLint . InvalidTestCase < MessageIds , Options > >
31
+ ? Array < TSESLint . InvalidTestCase < MessageIds , Options > >
32
+ : Array < TSESLint . ValidTestCase < Options > > => {
33
+ // @ts -expect-error this is fine, and will go away later once we upgrade
34
+ return cases . map ( code => {
35
+ const test = typeof code === 'string' ? { code } : code ;
36
+
37
+ return { filename : fixtureFilename , ...test } ;
38
+ } ) ;
29
39
} ;
30
40
31
41
const ConsoleClassAndVariableCode = dedent `
@@ -187,16 +197,18 @@ describe('error handling', () => {
187
197
'unbound-method jest edition without type service' ,
188
198
requireRule ( true ) ,
189
199
{
190
- valid : validTestCases . concat ( invalidTestCases . map ( ( { code } ) => code ) ) ,
200
+ valid : withFixtureFilename (
201
+ validTestCases . concat ( invalidTestCases . map ( ( { code } ) => code ) ) ,
202
+ ) ,
191
203
invalid : [ ] ,
192
204
} ,
193
205
) ;
194
206
} ) ;
195
207
} ) ;
196
208
197
209
ruleTester . run ( 'unbound-method jest edition' , requireRule ( false ) , {
198
- valid : validTestCases . map ( addFixtureFilename ) ,
199
- invalid : invalidTestCases ,
210
+ valid : withFixtureFilename ( validTestCases ) ,
211
+ invalid : withFixtureFilename ( invalidTestCases ) ,
200
212
} ) ;
201
213
202
214
function addContainsMethodsClass ( code : string ) : string {
@@ -235,7 +247,7 @@ function addContainsMethodsClassInvalid(
235
247
}
236
248
237
249
ruleTester . run ( 'unbound-method' , requireRule ( false ) , {
238
- valid : [
250
+ valid : withFixtureFilename ( [
239
251
'Promise.resolve().then(console.log);' ,
240
252
"['1', '2', '3'].map(Number.parseInt);" ,
241
253
'[5.2, 7.1, 3.6].map(Math.floor);' ,
@@ -466,8 +478,8 @@ class OtherClass extends BaseClass {
466
478
const oc = new OtherClass();
467
479
oc.superLogThis();
468
480
` ,
469
- ] . map ( addFixtureFilename ) ,
470
- invalid : [
481
+ ] ) ,
482
+ invalid : withFixtureFilename ( [
471
483
{
472
484
code : `
473
485
class Console {
@@ -827,5 +839,5 @@ const { b, a } = values;
827
839
} ,
828
840
] ,
829
841
} ,
830
- ] ,
842
+ ] ) ,
831
843
} ) ;
0 commit comments