-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enhance Test Explorer #16827
Comments
@ShuiRuTian Thanks for opening this. It would be great if you can explain if your implementation has similar flaws, and if not, how it solves the problems. Here is the problems I see related to each item:
Detecting whether the crate contains any test requires parsing all of files of it, which is against the laziness. How did your implementation handle initial resolve request without showing the empty crates?
Here, I didn't find out how to distinguish between integration tests and normal crates in a crate graph.
There is no problem in the way of this issue, I just kept the implementation simple by doing it at crate level granularity. We can easily change this to module level or file level.
Is there any vscode api to report the progress in this way? Again, thanks for all of your work related to the test explorer in r-a! |
Yeah, no. But it is kind of complex to explain the details, I build and maintain a small AST-like tree, most of issues would be how to update this tree.
Indeed, for the first time initialization, we have no choice if there is no test cases(but we might return quickly if there is any tests). We could only do better after initialization.
Although kind of tricky,
There is and there are many ways. It's flexible if you do the work on client side. But you are doing work on backend, so maybe create a vscode.Task to run build firstly? Is this feasible? Not sure... |
Show compilation progress in test explorer Fix part of #16827
Distinguish integration tests from crates in test explorer Fix part of #16827
Resolve tests per file instead of per crate in test explorer Fix part of #16827
While trying to enable the test explorer, I see nothing happened, then realized I should reload the window. So it would be nice, if we could prompt the user to reload the window, when we enable that setting? I didn't wanna create a new issue for this, so I'm hijacking this one. |
Another issue I'm experiencing is that the test explorer is not running tests under a I think it should take the already existing |
Apply cargo flags in test explorer cc #16827
rust-analyzer version: 0.3.1877-standalone (574e23e 2024-03-09)
I tried current implementation and found many flaws
display integration test like a cratefixed in Distinguish integration tests from crates in test explorer #16847No output from rustc, this might make user feel something is frozen. I mean something like:fixed in Show compilation progress in test explorer #16845It might not be very easy to fix these things, especially the third point(lazily)
Since we have test explorer anyway now, this channel might be another place to argue about whether we should implement test explorer main part in front-end(the editor) or backend(RA itself).
The client implementation is here: #14589
The text was updated successfully, but these errors were encountered: