Skip to content

Commit b45cfb6

Browse files
authored
test: account for js output in test cases (#1162)
1 parent a62ef2f commit b45cfb6

File tree

1 file changed

+14
-6
lines changed
  • packages/eslint-plugin-svelte/tests/utils

1 file changed

+14
-6
lines changed

packages/eslint-plugin-svelte/tests/utils/utils.ts

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -126,15 +126,19 @@ export function loadTestCases(
126126
.map((inputFile) => {
127127
const config = getConfig(ruleName, inputFile);
128128
const errorFile = inputFile.replace(/(input|\+.+)\.[a-z]+$/u, 'errors.yaml');
129-
const outputFile = inputFile.replace(/(input|\+.+)\.[a-z]+$/u, 'output.svelte');
129+
const outputExt = path.extname(inputFile);
130+
const outputFile = inputFile.replace(
131+
/(input|\+.+)\.[a-z]+$/u,
132+
`output.${outputExt.slice(1)}`
133+
);
130134

131135
if (!fs.existsSync(errorFile)) {
132-
writeFixtures(ruleName, inputFile);
136+
writeFixtures(ruleName, inputFile, outputFile);
133137
} else if (
134138
// eslint-disable-next-line no-process-env -- tool
135139
process.env.UPDATE_FIXTURES
136140
) {
137-
writeFixtures(ruleName, inputFile, { force: true });
141+
writeFixtures(ruleName, inputFile, outputFile, { force: true });
138142
}
139143
const errors = fs.readFileSync(errorFile, 'utf8');
140144
config.errors = parseYaml(errors);
@@ -151,7 +155,7 @@ export function loadTestCases(
151155
try {
152156
output = fs.readFileSync(outputFile, 'utf8');
153157
} catch (_e) {
154-
writeFixtures(ruleName, inputFile);
158+
writeFixtures(ruleName, inputFile, outputFile);
155159
output = fs.readFileSync(outputFile, 'utf8');
156160
}
157161
config.output = output === config.code ? null : output;
@@ -213,10 +217,14 @@ function applySuggestion(code: string, suggestion: LinterType.LintSuggestion) {
213217
return `${code.slice(0, fix.range[0])}${fix.text}${code.slice(fix.range[1])}`;
214218
}
215219

216-
function writeFixtures(ruleName: string, inputFile: string, { force }: { force?: boolean } = {}) {
220+
function writeFixtures(
221+
ruleName: string,
222+
inputFile: string,
223+
outputFile: string,
224+
{ force }: { force?: boolean } = {}
225+
) {
217226
const linter = new Linter();
218227
const errorFile = inputFile.replace(/(input|\+.+)\.[a-z]+$/u, 'errors.yaml');
219-
const outputFile = inputFile.replace(/(input|\+.+)\.[a-z]+$/u, 'output.svelte');
220228

221229
const config = getConfig(ruleName, inputFile);
222230

0 commit comments

Comments
 (0)