fix(linter) Fix prefer date now with parenthesis (#1245)

This commit is contained in:
Cameron 2023-11-13 00:42:05 +00:00 committed by GitHub
parent f3f3383733
commit d55ce0ddc6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 16 additions and 1 deletions

View file

@ -149,7 +149,7 @@ impl Rule for PreferDateNow {
}
fn is_new_date(expr: &Expression) -> bool {
let Expression::NewExpression(new_expr) = expr else { return false };
let Expression::NewExpression(new_expr) = expr.without_parenthesized() else { return false };
if let Expression::Identifier(ident) = &new_expr.callee {
return ident.name == "Date" && new_expr.arguments.is_empty();
@ -216,6 +216,7 @@ fn test() {
r#"foo /= new Date"#,
r#"foo %= new Date()"#,
r#"foo **= new Date()"#,
r#"foo **= (new Date())"#,
r#"function foo(){return+new Date}"#,
r#"function foo(){return-new Date}"#,
];

View file

@ -114,6 +114,13 @@ expression: prefer_date_now
╰────
help: Change to `Date.now()`.
⚠ eslint-plugin-unicorn(prefer-date-now): Prefer `Date.now()` over `new Date()`
╭─[prefer_date_now.tsx:1:1]
1 │ const zero = (new Date(/* 1 */) /* 2 */) /* 3 */ - /* 4 */new Date
· ───────────────────────────
╰────
help: Change to `Date.now()`.
⚠ eslint-plugin-unicorn(prefer-date-now): Prefer `Date.now()` over `new Date()`
╭─[prefer_date_now.tsx:1:1]
1 │ const zero = (new Date(/* 1 */) /* 2 */) /* 3 */ - /* 4 */new Date
@ -156,6 +163,13 @@ expression: prefer_date_now
╰────
help: Change to `Date.now()`.
⚠ eslint-plugin-unicorn(prefer-date-now): Prefer `Date.now()` over `new Date()`
╭─[prefer_date_now.tsx:1:1]
1 │ foo **= (new Date())
· ────────────
╰────
help: Change to `Date.now()`.
⚠ eslint-plugin-unicorn(prefer-date-now): Prefer `Date.now()` over `new Date()`
╭─[prefer_date_now.tsx:1:1]
1 │ function foo(){return+new Date}