fix(linter): error diagnostic message based on parameter length of valid-expect (#6455)

This commit is contained in:
dalaoshu 2024-10-11 21:16:17 +08:00 committed by GitHub
parent 073b02af14
commit e81181261d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 68 additions and 68 deletions

View file

@ -159,21 +159,21 @@ impl ValidExpect {
return; return;
}; };
if call_expr.arguments.len() < self.min_args { if call_expr.arguments.len() > self.max_args {
let error = format!( let error = format!(
"Expect takes at most {} argument{} ", "Expect takes at most {} argument{} ",
self.min_args, self.max_args,
if self.min_args > 1 { "s" } else { "" } if self.max_args > 1 { "s" } else { "" }
); );
let help = "Remove the extra arguments."; let help = "Remove the extra arguments.";
ctx.diagnostic(valid_expect_diagnostic(error, help, call_expr.span)); ctx.diagnostic(valid_expect_diagnostic(error, help, call_expr.span));
return; return;
} }
if call_expr.arguments.len() > self.max_args { if call_expr.arguments.len() < self.min_args {
let error = format!( let error = format!(
"Expect requires at least {} argument{} ", "Expect requires at least {} argument{} ",
self.max_args, self.min_args,
if self.max_args > 1 { "s" } else { "" } if self.min_args > 1 { "s" } else { "" }
); );
let help = "Add the missing arguments."; let help = "Add the missing arguments.";
ctx.diagnostic(valid_expect_diagnostic(error, help, call_expr.span)); ctx.diagnostic(valid_expect_diagnostic(error, help, call_expr.span));

View file

@ -1,63 +1,63 @@
--- ---
source: crates/oxc_linter/src/tester.rs source: crates/oxc_linter/src/tester.rs
--- ---
⚠ eslint-plugin-vitest(valid-expect): Expect takes at most 1 argument ⚠ eslint-plugin-vitest(valid-expect): Expect requires at least 1 argument
╭─[valid_expect.tsx:1:1] ╭─[valid_expect.tsx:1:1]
1 │ expect().toBe(2); 1 │ expect().toBe(2);
· ──────── · ────────
╰──── ╰────
help: Remove the extra arguments. help: Add the missing arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect takes at most 1 argument ⚠ eslint-plugin-vitest(valid-expect): Expect requires at least 1 argument
╭─[valid_expect.tsx:1:1] ╭─[valid_expect.tsx:1:1]
1 │ expect().toBe(true); 1 │ expect().toBe(true);
· ──────── · ────────
╰──── ╰────
help: Remove the extra arguments. help: Add the missing arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect takes at most 1 argument ⚠ eslint-plugin-vitest(valid-expect): Expect requires at least 1 argument
╭─[valid_expect.tsx:1:1] ╭─[valid_expect.tsx:1:1]
1 │ expect().toEqual('something'); 1 │ expect().toEqual('something');
· ──────── · ────────
╰──── ╰────
help: Remove the extra arguments. help: Add the missing arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect requires at least 1 argument ⚠ eslint-plugin-vitest(valid-expect): Expect takes at most 1 argument
╭─[valid_expect.tsx:1:1] ╭─[valid_expect.tsx:1:1]
1 │ expect('something', 'else').toEqual('something'); 1 │ expect('something', 'else').toEqual('something');
· ─────────────────────────── · ───────────────────────────
╰──── ╰────
help: Add the missing arguments. help: Remove the extra arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect requires at least 2 arguments
╭─[valid_expect.tsx:1:1]
1 │ expect('something', 'else', 'entirely').toEqual('something');
· ───────────────────────────────────────
╰────
help: Add the missing arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect requires at least 2 arguments
╭─[valid_expect.tsx:1:1]
1 │ expect('something', 'else', 'entirely').toEqual('something');
· ───────────────────────────────────────
╰────
help: Add the missing arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect requires at least 2 arguments
╭─[valid_expect.tsx:1:1]
1 │ expect('something', 'else', 'entirely').toEqual('something');
· ───────────────────────────────────────
╰────
help: Add the missing arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect takes at most 2 arguments ⚠ eslint-plugin-vitest(valid-expect): Expect takes at most 2 arguments
╭─[valid_expect.tsx:1:1] ╭─[valid_expect.tsx:1:1]
1 │ expect('something', 'else', 'entirely').toEqual('something');
· ───────────────────────────────────────
╰────
help: Remove the extra arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect takes at most 2 arguments
╭─[valid_expect.tsx:1:1]
1 │ expect('something', 'else', 'entirely').toEqual('something');
· ───────────────────────────────────────
╰────
help: Remove the extra arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect takes at most 2 arguments
╭─[valid_expect.tsx:1:1]
1 │ expect('something', 'else', 'entirely').toEqual('something');
· ───────────────────────────────────────
╰────
help: Remove the extra arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect requires at least 2 arguments
╭─[valid_expect.tsx:1:1]
1 │ expect('something').toEqual('something'); 1 │ expect('something').toEqual('something');
· ─────────────────── · ───────────────────
╰──── ╰────
help: Remove the extra arguments. help: Add the missing arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect takes at most 3 arguments ⚠ eslint-plugin-vitest(valid-expect): Expect takes at most 1 argument
╭─[valid_expect.tsx:1:1] ╭─[valid_expect.tsx:1:1]
1 │ expect('something', 'else').toEqual('something'); 1 │ expect('something', 'else').toEqual('something');
· ─────────────────────────── · ───────────────────────────
@ -498,63 +498,63 @@ source: crates/oxc_linter/src/tester.rs
╰──── ╰────
help: Did you forget add a matcher(e.g. `toBe`, `toBeDefined`) help: Did you forget add a matcher(e.g. `toBe`, `toBeDefined`)
⚠ eslint-plugin-vitest(valid-expect): Expect takes at most 1 argument ⚠ eslint-plugin-vitest(valid-expect): Expect requires at least 1 argument
╭─[valid_expect.tsx:1:1] ╭─[valid_expect.tsx:1:1]
1 │ expect().toBe(2); 1 │ expect().toBe(2);
· ──────── · ────────
╰──── ╰────
help: Remove the extra arguments. help: Add the missing arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect takes at most 1 argument ⚠ eslint-plugin-vitest(valid-expect): Expect requires at least 1 argument
╭─[valid_expect.tsx:1:1] ╭─[valid_expect.tsx:1:1]
1 │ expect().toBe(true); 1 │ expect().toBe(true);
· ──────── · ────────
╰──── ╰────
help: Remove the extra arguments. help: Add the missing arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect takes at most 1 argument ⚠ eslint-plugin-vitest(valid-expect): Expect requires at least 1 argument
╭─[valid_expect.tsx:1:1] ╭─[valid_expect.tsx:1:1]
1 │ expect().toEqual("something"); 1 │ expect().toEqual("something");
· ──────── · ────────
╰──── ╰────
help: Remove the extra arguments. help: Add the missing arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect requires at least 1 argument ⚠ eslint-plugin-vitest(valid-expect): Expect takes at most 1 argument
╭─[valid_expect.tsx:1:1] ╭─[valid_expect.tsx:1:1]
1 │ expect("something", "else").toEqual("something"); 1 │ expect("something", "else").toEqual("something");
· ─────────────────────────── · ───────────────────────────
╰──── ╰────
help: Add the missing arguments. help: Remove the extra arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect requires at least 2 arguments
╭─[valid_expect.tsx:1:1]
1 │ expect("something", "else", "entirely").toEqual("something");
· ───────────────────────────────────────
╰────
help: Add the missing arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect requires at least 2 arguments
╭─[valid_expect.tsx:1:1]
1 │ expect("something", "else", "entirely").toEqual("something");
· ───────────────────────────────────────
╰────
help: Add the missing arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect requires at least 2 arguments
╭─[valid_expect.tsx:1:1]
1 │ expect("something", "else", "entirely").toEqual("something");
· ───────────────────────────────────────
╰────
help: Add the missing arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect takes at most 2 arguments ⚠ eslint-plugin-vitest(valid-expect): Expect takes at most 2 arguments
╭─[valid_expect.tsx:1:1] ╭─[valid_expect.tsx:1:1]
1 │ expect("something", "else", "entirely").toEqual("something");
· ───────────────────────────────────────
╰────
help: Remove the extra arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect takes at most 2 arguments
╭─[valid_expect.tsx:1:1]
1 │ expect("something", "else", "entirely").toEqual("something");
· ───────────────────────────────────────
╰────
help: Remove the extra arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect takes at most 2 arguments
╭─[valid_expect.tsx:1:1]
1 │ expect("something", "else", "entirely").toEqual("something");
· ───────────────────────────────────────
╰────
help: Remove the extra arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect requires at least 2 arguments
╭─[valid_expect.tsx:1:1]
1 │ expect("something").toEqual("something"); 1 │ expect("something").toEqual("something");
· ─────────────────── · ───────────────────
╰──── ╰────
help: Remove the extra arguments. help: Add the missing arguments.
⚠ eslint-plugin-vitest(valid-expect): Expect takes at most 3 arguments ⚠ eslint-plugin-vitest(valid-expect): Expect takes at most 1 argument
╭─[valid_expect.tsx:1:1] ╭─[valid_expect.tsx:1:1]
1 │ expect("something", "else").toEqual("something"); 1 │ expect("something", "else").toEqual("something");
· ─────────────────────────── · ───────────────────────────