-
Notifications
You must be signed in to change notification settings - Fork 44
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
More interactive commands #221
Comments
One of the problems with the current way of dealing with tests is that every time you evaluate a |
I'm diving into seriously elisp development. I lack context. I will endlessly invest in team productivity. 99% of use cases are run all the tests or run just one test. However, running the test at point is a bit cumbersome compared to picking it out of completions. Manual reloading is the other big workflow tax. I think rebuilding the list of suites is fine. The time spent loading will almost always be less than time saved by automation. To avoid clobbering when using multiple projects, a single per-project buffer with buffer locals could be used. The issue then is just how to find the tests & features and then reload the feature under test and tests themselves. Figuring out load order exactly would require building a feature DAG by looking at a project. A heuristic + per-project settings via variables could probably do as well, especially with completions for features and using features to discover where they were loaded from. In addition, since all CC @alphapapa no idea where discovery + reload code needs to live eventually, but it seems generally useful. All of these linters and test runners need to be able to discover and reload the project feature / elisp files. I think I will make some contributions to unpackaged and duplicate useful bits to elisp-repo-kit for turnaround time. I just discovered yesterday that let-binding Because the user's own interactive state might be clobbered by reloading features that are in use, (the bootstrap problem for all tooling), it's reasonable to want to run tests in a separate Emacs when true purity or isolation from the user's own use of Emacs is needed. Support for opting out of automatic feature reloading may be useful, again using some project setting like so: https://emacs.stackexchange.com/questions/691/how-can-i-customize-the-compile-command |
I was destroyed by some issue that only appears with a byte compiled loaded file in alphapapa/makem.sh#36 I don't have much experience debugging .elc so I'm having to put buttercup lower in my priority for now. |
As I pointed out there, that is #218 in Buttercup. I've already made #219 to fix it, which I use locally when testing my packages.
The discovery problems I've mostly solved in |
Project-based test discovery, completions dispatch of individual tests. The run-at-point command is neat, but completions to run suites / specs while developing would be more useful to avoid needing to get the point back at the test.
The text was updated successfully, but these errors were encountered: