@@ -61,7 +61,7 @@ export function loadTestCases(
61
61
valid ?: ( RuleTester . ValidTestCase | string ) [ ]
62
62
invalid ?: RuleTester . InvalidTestCase [ ]
63
63
}
64
- filter : ( file : string ) => boolean
64
+ filter ? : ( file : string ) => boolean
65
65
} ,
66
66
) : {
67
67
valid : RuleTester . ValidTestCase [ ]
@@ -88,8 +88,8 @@ export function loadTestCases(
88
88
. filter ( filter )
89
89
. map ( ( inputFile ) => {
90
90
const config = getConfig ( ruleName , inputFile )
91
- const errorFile = inputFile . replace ( / i n p u t \. s v e l t e $ / u, "errors.json" )
92
- const outputFile = inputFile . replace ( / i n p u t \. s v e l t e $ / u, "output.svelte" )
91
+ const errorFile = inputFile . replace ( / i n p u t \. [ a - z ] + $ / u, "errors.json" )
92
+ const outputFile = inputFile . replace ( / i n p u t \. [ a - z ] + $ / u, "output.svelte" )
93
93
let errors
94
94
try {
95
95
errors = fs . readFileSync ( errorFile , "utf8" )
@@ -147,7 +147,7 @@ function* itrListupInput(rootDir: string): IterableIterator<string> {
147
147
continue
148
148
}
149
149
const abs = path . join ( rootDir , filename )
150
- if ( filename . endsWith ( "input.svelte " ) ) {
150
+ if ( path . basename ( filename , path . extname ( filename ) ) . endsWith ( "input" ) ) {
151
151
yield abs
152
152
} else if ( fs . statSync ( abs ) . isDirectory ( ) ) {
153
153
yield * itrListupInput ( abs )
@@ -161,8 +161,8 @@ function writeFixtures(
161
161
{ force } : { force ?: boolean } = { } ,
162
162
) {
163
163
const linter = getLinter ( ruleName )
164
- const errorFile = inputFile . replace ( / i n p u t \. s v e l t e $ / u, "errors.json" )
165
- const outputFile = inputFile . replace ( / i n p u t \. s v e l t e $ / u, "output.svelte" )
164
+ const errorFile = inputFile . replace ( / i n p u t \. [ a - z ] + $ / u, "errors.json" )
165
+ const outputFile = inputFile . replace ( / i n p u t \. [ a - z ] + $ / u, "output.svelte" )
166
166
167
167
const config = getConfig ( ruleName , inputFile )
168
168
@@ -222,23 +222,17 @@ function getConfig(ruleName: string, inputFile: string) {
222
222
const filename = inputFile . slice ( inputFile . indexOf ( ruleName ) )
223
223
const code = fs . readFileSync ( inputFile , "utf8" )
224
224
let config
225
- let configFile : string = inputFile . replace ( / i n p u t \. s v e l t e $ / u, "config.json" )
225
+ let configFile : string = inputFile . replace ( / i n p u t \. [ a - z ] + $ / u, "config.json" )
226
226
if ( ! fs . existsSync ( configFile ) ) {
227
227
configFile = path . join ( path . dirname ( inputFile ) , "_config.json" )
228
228
}
229
229
if ( fs . existsSync ( configFile ) ) {
230
230
config = JSON . parse ( fs . readFileSync ( configFile , "utf8" ) )
231
231
}
232
- if ( config && typeof config === "object" ) {
233
- return Object . assign (
234
- { parser : require . resolve ( "svelte-eslint-parser" ) } ,
235
- config ,
236
- { code, filename } ,
237
- )
238
- }
239
- // default
240
- return Object . assign (
241
- { parser : require . resolve ( "svelte-eslint-parser" ) } ,
242
- { code, filename } ,
243
- )
232
+ const parser =
233
+ path . extname ( filename ) === ".svelte"
234
+ ? require . resolve ( "svelte-eslint-parser" )
235
+ : undefined
236
+
237
+ return Object . assign ( { parser } , config , { code, filename } )
244
238
}
0 commit comments