Lints and suggestions for the Nix programming language

chore: 1-expr tests empty-pattern

+78 -56
-17
bin/tests/data/empty_pattern.nix
··· 1 - [ 2 - # match 3 - ({ ... }: 42) 4 - 5 - # don't match 6 - ({ a, ... }: a) 7 - ({ ... } @ inputs: inputs) 8 - 9 - # nixos module, don't match 10 - ({ ... }: { 11 - imports = [ 12 - ./module.nix 13 - /path/to/absolute/module.nix 14 - ]; 15 - }) 16 - ] 17 -
+18
bin/tests/empty_pattern.rs
··· 1 + mod _utils; 2 + 3 + use macros::generate_tests; 4 + 5 + generate_tests! { 6 + rule: manual_inherit, 7 + expressions: [ 8 + // match 9 + "({ ... }: 42)", 10 + "({ ... } @ inputs: inputs)", 11 + 12 + // don't match 13 + "({ a, ... }: a)", 14 + 15 + // nixos module, don't match 16 + "({ ... }: { imports = []; })", 17 + ], 18 + }
-1
bin/tests/main.rs
··· 44 44 } 45 45 46 46 test_lint! { 47 - empty_pattern, 48 47 redundant_pattern_bind, 49 48 unquoted_uri, 50 49 empty_inherit,
+5
bin/tests/snapshots/empty_pattern__fix_6f4e8d386aea545d7a5dbe6d074f9262f8899b97d157cda18f9a6d408ef1dee2.snap
··· 1 + --- 2 + source: bin/tests/empty_pattern.rs 3 + expression: "\"({ a, ... }: a)\"" 4 + --- 5 +
+5
bin/tests/snapshots/empty_pattern__fix_a0f60e09ffb31c58f803adaf8e3f854bb95fc3a4f6ac05072ee5f4f644a12141.snap
··· 1 + --- 2 + source: bin/tests/empty_pattern.rs 3 + expression: "\"({ ... }: { imports = []; })\"" 4 + --- 5 +
+9
bin/tests/snapshots/empty_pattern__fix_d126fd36c3561a6c02bd6635634d026132ac432cf96054241af194564f2d211a.snap
··· 1 + --- 2 + source: bin/tests/empty_pattern.rs 3 + expression: "\"({ ... }: 42)\"" 4 + --- 5 + --- <temp_file_path> 6 + +++ <temp_file_path> [fixed] 7 + @@ -1 +1 @@ 8 + -({ ... }: 42) 9 + +(_: 42)
+9
bin/tests/snapshots/empty_pattern__fix_d258b2d28244a887c36cde36b8b3c30112c86c2090c39b776a1d03a64f503f40.snap
··· 1 + --- 2 + source: bin/tests/empty_pattern.rs 3 + expression: "\"({ ... } @ inputs: inputs)\"" 4 + --- 5 + --- <temp_file_path> 6 + +++ <temp_file_path> [fixed] 7 + @@ -1 +1 @@ 8 + -({ ... } @ inputs: inputs) 9 + +(inputs: inputs)
+5
bin/tests/snapshots/empty_pattern__lint_6f4e8d386aea545d7a5dbe6d074f9262f8899b97d157cda18f9a6d408ef1dee2.snap
··· 1 + --- 2 + source: bin/tests/empty_pattern.rs 3 + expression: "\"({ a, ... }: a)\"" 4 + --- 5 +
+5
bin/tests/snapshots/empty_pattern__lint_a0f60e09ffb31c58f803adaf8e3f854bb95fc3a4f6ac05072ee5f4f644a12141.snap
··· 1 + --- 2 + source: bin/tests/empty_pattern.rs 3 + expression: "\"({ ... }: { imports = []; })\"" 4 + --- 5 +
+11
bin/tests/snapshots/empty_pattern__lint_d126fd36c3561a6c02bd6635634d026132ac432cf96054241af194564f2d211a.snap
··· 1 + --- 2 + source: bin/tests/empty_pattern.rs 3 + expression: "\"({ ... }: 42)\"" 4 + --- 5 + [W10] Warning: Found empty pattern in function argument 6 + ╭─[<temp_file_path>:1:2] 7 + 8 + 1 │ ({ ... }: 42) 9 + · ───┬─── 10 + · ╰───── This pattern is empty, use _ instead 11 + ───╯
+11
bin/tests/snapshots/empty_pattern__lint_d258b2d28244a887c36cde36b8b3c30112c86c2090c39b776a1d03a64f503f40.snap
··· 1 + --- 2 + source: bin/tests/empty_pattern.rs 3 + expression: "\"({ ... } @ inputs: inputs)\"" 4 + --- 5 + [W11] Warning: Found redundant pattern bind in function argument 6 + ╭─[<temp_file_path>:1:2] 7 + 8 + 1 │ ({ ... } @ inputs: inputs) 9 + · ────────┬─────── 10 + · ╰───────── This pattern bind is redundant, use inputs instead 11 + ───╯
-20
bin/tests/snapshots/main__empty_pattern_fix.snap
··· 1 - --- 2 - source: bin/tests/main.rs 3 - expression: "&stdout" 4 - --- 5 - --- tests/data/empty_pattern.nix 6 - +++ tests/data/empty_pattern.nix [fixed] 7 - @@ -1,11 +1,11 @@ 8 - [ 9 - # match 10 - - ({ ... }: 42) 11 - + (_: 42) 12 - 13 - # don't match 14 - ({ a, ... }: a) 15 - - ({ ... } @ inputs: inputs) 16 - + (inputs: inputs) 17 - 18 - # nixos module, don't match 19 - ({ ... }: { 20 - imports = [
-18
bin/tests/snapshots/main__empty_pattern_lint.snap
··· 1 - --- 2 - source: bin/tests/main.rs 3 - expression: "&stdout" 4 - --- 5 - [W10] Warning: Found empty pattern in function argument 6 - ╭─[tests/data/empty_pattern.nix:3:4] 7 - 8 - 3 │ ({ ... }: 42) 9 - · ───┬─── 10 - · ╰───── This pattern is empty, use _ instead 11 - ───╯ 12 - [W11] Warning: Found redundant pattern bind in function argument 13 - ╭─[tests/data/empty_pattern.nix:7:4] 14 - 15 - 7 │ ({ ... } @ inputs: inputs) 16 - · ────────┬─────── 17 - · ╰───────── This pattern bind is redundant, use inputs instead 18 - ───╯