Commit f69d83e
committed
internal: Fix test_loading_rust_analyzer when rust-project.json is present
load_workspace_at() looks at parent directories. If rust-analyzer is
in a directory (e.g. a monorepo) where a parent directory contains a
rust-project.json, that configuration wins over the Cargo.toml and the
test fails.
One easy way of testing this is deliberately writing an invalid JSON
file to the parent directory.
```
$ echo '{' > ../rust-project.json
$ cargo t -p load-cargo
---- tests::test_loading_rust_analyzer stdout ----
thread 'tests::test_loading_rust_analyzer' (38576150) panicked at crates/load-cargo/src/lib.rs:756:81:
called `Result::unwrap()` on an `Err` value: Failed to load the project at /Users/wilfred/src/rust-project.json
Caused by:
0: Failed to deserialize json file /Users/wilfred/src/rust-project.json
1: EOF while parsing an object at line 2 column 0
```
Instead, explicitly load the cargo workspace so the presence of a
rust-project.json never changes the result of the test.
AI disclosure: Written with help from Claude.1 parent 129a4b1 commit f69d83e
1 file changed
Lines changed: 11 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
744 | 744 | | |
745 | 745 | | |
746 | 746 | | |
747 | | - | |
| 747 | + | |
| 748 | + | |
| 749 | + | |
| 750 | + | |
| 751 | + | |
| 752 | + | |
| 753 | + | |
| 754 | + | |
| 755 | + | |
748 | 756 | | |
749 | 757 | | |
750 | 758 | | |
751 | 759 | | |
752 | 760 | | |
753 | 761 | | |
754 | 762 | | |
| 763 | + | |
755 | 764 | | |
756 | | - | |
| 765 | + | |
757 | 766 | | |
758 | 767 | | |
759 | 768 | | |
| |||
0 commit comments