1
1
import path from 'node:path'
2
2
import { RuleTester } from '@typescript-eslint/rule-tester'
3
- import { afterAll , describe , it } from 'vitest'
3
+ import { afterAll , describe , it , test } from 'vitest'
4
4
import { rule } from '../rules/no-void-query-fn/no-void-query-fn.rule'
5
5
import { normalizeIndent } from './test-utils'
6
6
@@ -18,11 +18,12 @@ const ruleTester = new RuleTester({
18
18
} ,
19
19
} )
20
20
21
- ruleTester . run ( 'no-void-query-fn' , rule , {
22
- valid : [
23
- {
24
- name : 'queryFn returns a value' ,
25
- code : normalizeIndent `
21
+ test ( 'should run rule tests' , ( ) => {
22
+ ruleTester . run ( 'no-void-query-fn' , rule , {
23
+ valid : [
24
+ {
25
+ name : 'queryFn returns a value' ,
26
+ code : normalizeIndent `
26
27
import { useQuery } from '@tanstack/react-query'
27
28
28
29
function Component() {
@@ -33,10 +34,10 @@ ruleTester.run('no-void-query-fn', rule, {
33
34
return null
34
35
}
35
36
` ,
36
- } ,
37
- {
38
- name : 'queryFn returns a Promise' ,
39
- code : normalizeIndent `
37
+ } ,
38
+ {
39
+ name : 'queryFn returns a Promise' ,
40
+ code : normalizeIndent `
40
41
import { useQuery } from '@tanstack/react-query'
41
42
42
43
function Component() {
@@ -47,10 +48,10 @@ ruleTester.run('no-void-query-fn', rule, {
47
48
return null
48
49
}
49
50
` ,
50
- } ,
51
- {
52
- name : 'queryFn returns Promise.resolve' ,
53
- code : normalizeIndent `
51
+ } ,
52
+ {
53
+ name : 'queryFn returns Promise.resolve' ,
54
+ code : normalizeIndent `
54
55
import { useQuery } from '@tanstack/react-query'
55
56
56
57
function Component() {
@@ -61,10 +62,10 @@ ruleTester.run('no-void-query-fn', rule, {
61
62
return null
62
63
}
63
64
` ,
64
- } ,
65
- {
66
- name : 'queryFn with explicit Promise type' ,
67
- code : normalizeIndent `
65
+ } ,
66
+ {
67
+ name : 'queryFn with explicit Promise type' ,
68
+ code : normalizeIndent `
68
69
import { useQuery } from '@tanstack/react-query'
69
70
70
71
interface Data {
@@ -81,10 +82,10 @@ ruleTester.run('no-void-query-fn', rule, {
81
82
return null
82
83
}
83
84
` ,
84
- } ,
85
- {
86
- name : 'queryFn with generic Promise type' ,
87
- code : normalizeIndent `
85
+ } ,
86
+ {
87
+ name : 'queryFn with generic Promise type' ,
88
+ code : normalizeIndent `
88
89
import { useQuery } from '@tanstack/react-query'
89
90
90
91
interface Response<T> {
@@ -101,10 +102,10 @@ ruleTester.run('no-void-query-fn', rule, {
101
102
return null
102
103
}
103
104
` ,
104
- } ,
105
- {
106
- name : 'queryFn with external async function' ,
107
- code : normalizeIndent `
105
+ } ,
106
+ {
107
+ name : 'queryFn with external async function' ,
108
+ code : normalizeIndent `
108
109
import { useQuery } from '@tanstack/react-query'
109
110
110
111
async function fetchData(): Promise<{ data: string }> {
@@ -119,10 +120,10 @@ ruleTester.run('no-void-query-fn', rule, {
119
120
return null
120
121
}
121
122
` ,
122
- } ,
123
- {
124
- name : 'queryFn returns null' ,
125
- code : normalizeIndent `
123
+ } ,
124
+ {
125
+ name : 'queryFn returns null' ,
126
+ code : normalizeIndent `
126
127
import { useQuery } from '@tanstack/react-query'
127
128
128
129
function Component() {
@@ -133,10 +134,10 @@ ruleTester.run('no-void-query-fn', rule, {
133
134
return null
134
135
}
135
136
` ,
136
- } ,
137
- {
138
- name : 'queryFn returns 0' ,
139
- code : normalizeIndent `
137
+ } ,
138
+ {
139
+ name : 'queryFn returns 0' ,
140
+ code : normalizeIndent `
140
141
import { useQuery } from '@tanstack/react-query'
141
142
142
143
function Component() {
@@ -147,10 +148,10 @@ ruleTester.run('no-void-query-fn', rule, {
147
148
return null
148
149
}
149
150
` ,
150
- } ,
151
- {
152
- name : 'queryFn returns false' ,
153
- code : normalizeIndent `
151
+ } ,
152
+ {
153
+ name : 'queryFn returns false' ,
154
+ code : normalizeIndent `
154
155
import { useQuery } from '@tanstack/react-query'
155
156
156
157
function Component() {
@@ -161,12 +162,12 @@ ruleTester.run('no-void-query-fn', rule, {
161
162
return null
162
163
}
163
164
` ,
164
- } ,
165
- ] ,
166
- invalid : [
167
- {
168
- name : 'queryFn returns void' ,
169
- code : normalizeIndent `
165
+ } ,
166
+ ] ,
167
+ invalid : [
168
+ {
169
+ name : 'queryFn returns void' ,
170
+ code : normalizeIndent `
170
171
import { useQuery } from '@tanstack/react-query'
171
172
172
173
function Component() {
@@ -179,11 +180,11 @@ ruleTester.run('no-void-query-fn', rule, {
179
180
return null
180
181
}
181
182
` ,
182
- errors : [ { messageId : 'noVoidReturn' } ] ,
183
- } ,
184
- {
185
- name : 'queryFn returns undefined' ,
186
- code : normalizeIndent `
183
+ errors : [ { messageId : 'noVoidReturn' } ] ,
184
+ } ,
185
+ {
186
+ name : 'queryFn returns undefined' ,
187
+ code : normalizeIndent `
187
188
import { useQuery } from '@tanstack/react-query'
188
189
189
190
function Component() {
@@ -194,11 +195,11 @@ ruleTester.run('no-void-query-fn', rule, {
194
195
return null
195
196
}
196
197
` ,
197
- errors : [ { messageId : 'noVoidReturn' } ] ,
198
- } ,
199
- {
200
- name : 'async queryFn returns void' ,
201
- code : normalizeIndent `
198
+ errors : [ { messageId : 'noVoidReturn' } ] ,
199
+ } ,
200
+ {
201
+ name : 'async queryFn returns void' ,
202
+ code : normalizeIndent `
202
203
import { useQuery } from '@tanstack/react-query'
203
204
204
205
function Component() {
@@ -211,11 +212,11 @@ ruleTester.run('no-void-query-fn', rule, {
211
212
return null
212
213
}
213
214
` ,
214
- errors : [ { messageId : 'noVoidReturn' } ] ,
215
- } ,
216
- {
217
- name : 'queryFn with explicit void Promise' ,
218
- code : normalizeIndent `
215
+ errors : [ { messageId : 'noVoidReturn' } ] ,
216
+ } ,
217
+ {
218
+ name : 'queryFn with explicit void Promise' ,
219
+ code : normalizeIndent `
219
220
import { useQuery } from '@tanstack/react-query'
220
221
221
222
function Component() {
@@ -228,11 +229,11 @@ ruleTester.run('no-void-query-fn', rule, {
228
229
return null
229
230
}
230
231
` ,
231
- errors : [ { messageId : 'noVoidReturn' } ] ,
232
- } ,
233
- {
234
- name : 'queryFn with Promise.resolve(undefined)' ,
235
- code : normalizeIndent `
232
+ errors : [ { messageId : 'noVoidReturn' } ] ,
233
+ } ,
234
+ {
235
+ name : 'queryFn with Promise.resolve(undefined)' ,
236
+ code : normalizeIndent `
236
237
import { useQuery } from '@tanstack/react-query'
237
238
238
239
function Component() {
@@ -243,11 +244,11 @@ ruleTester.run('no-void-query-fn', rule, {
243
244
return null
244
245
}
245
246
` ,
246
- errors : [ { messageId : 'noVoidReturn' } ] ,
247
- } ,
248
- {
249
- name : 'queryFn with external void async function' ,
250
- code : normalizeIndent `
247
+ errors : [ { messageId : 'noVoidReturn' } ] ,
248
+ } ,
249
+ {
250
+ name : 'queryFn with external void async function' ,
251
+ code : normalizeIndent `
251
252
import { useQuery } from '@tanstack/react-query'
252
253
253
254
async function voidOperation(): Promise<void> {
@@ -262,11 +263,11 @@ ruleTester.run('no-void-query-fn', rule, {
262
263
return null
263
264
}
264
265
` ,
265
- errors : [ { messageId : 'noVoidReturn' } ] ,
266
- } ,
267
- {
268
- name : 'queryFn with conditional return (one branch missing)' ,
269
- code : normalizeIndent `
266
+ errors : [ { messageId : 'noVoidReturn' } ] ,
267
+ } ,
268
+ {
269
+ name : 'queryFn with conditional return (one branch missing)' ,
270
+ code : normalizeIndent `
270
271
import { useQuery } from '@tanstack/react-query'
271
272
272
273
function Component() {
@@ -282,11 +283,11 @@ ruleTester.run('no-void-query-fn', rule, {
282
283
return null
283
284
}
284
285
` ,
285
- errors : [ { messageId : 'noVoidReturn' } ] ,
286
- } ,
287
- {
288
- name : 'queryFn with ternary operator returning undefined' ,
289
- code : normalizeIndent `
286
+ errors : [ { messageId : 'noVoidReturn' } ] ,
287
+ } ,
288
+ {
289
+ name : 'queryFn with ternary operator returning undefined' ,
290
+ code : normalizeIndent `
290
291
import { useQuery } from '@tanstack/react-query'
291
292
292
293
function Component() {
@@ -297,11 +298,11 @@ ruleTester.run('no-void-query-fn', rule, {
297
298
return null
298
299
}
299
300
` ,
300
- errors : [ { messageId : 'noVoidReturn' } ] ,
301
- } ,
302
- {
303
- name : 'async queryFn with try/catch missing return in catch' ,
304
- code : normalizeIndent `
301
+ errors : [ { messageId : 'noVoidReturn' } ] ,
302
+ } ,
303
+ {
304
+ name : 'async queryFn with try/catch missing return in catch' ,
305
+ code : normalizeIndent `
305
306
import { useQuery } from '@tanstack/react-query'
306
307
307
308
function Component() {
@@ -319,7 +320,8 @@ ruleTester.run('no-void-query-fn', rule, {
319
320
return null
320
321
}
321
322
` ,
322
- errors : [ { messageId : 'noVoidReturn' } ] ,
323
- } ,
324
- ] ,
325
- } )
323
+ errors : [ { messageId : 'noVoidReturn' } ] ,
324
+ } ,
325
+ ] ,
326
+ } )
327
+ } , 10_000 )
0 commit comments