-
-
Notifications
You must be signed in to change notification settings - Fork 645
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
clojure.test integration #613
Comments
Any hope of this making it into 0.7? I think a lot of people are eager to get on the 'stable branch' after essentially being forced to ride master for cider and cider-nrepl the last months. Staying on 0.7-STABLE until 0.8-STABLE comes out would leave those users without a reliable way to run their tests for quite some time (development time for 0.8 + delays due to summer vacations). |
@bbatsov This had been in the back of my mind as well. I will try to carve out some time for this in the next week. Without having looked into any implementation details yet, one design issue does come to mind: how to deal with test exceptions. With
@bbatsov Any thoughts on this? This strikes me as a design issue @hugoduncan might like to weigh in on too. |
@jeffvalk Sounds like an excellent idea to me! The UI design I had in mind is pretty much what you describe - a listing of tests in a popup buffer, with the ability to act on failing tests and see some details about the failure. |
Ok. I'll roll with that. |
Having exceptions from Having test fails in a separate buffer would also be useful, espescially if displayed using the test context information provided by Integrating test fail output with Note that a test function can have multiple fails, but only one error (after which the rest of the test function is not run). |
Another consideration, perhaps for a later date, would be to design the ops for the test middleware such that other test systems (such as midje) could provide an implementation. |
Nice idea. Perhaps we can have the option to rerun the test at point in the list or all failed tests together.
We should start small. This could be added at a later point in time.
Indeed. We should have 3 states for the tests - passed, failed and erred (or something like that).
That'd be great indeed, but we should definitely start small and avoid over-engineering the initial solution. |
Add 'cider-test', to replace the retired 'clojure-test-mode'. Add mostly complete cider-test result layout. Enable cider-test mode and key bindings. Add interactive run functions. Rename cider-test-report-mode. Echo testing and summary messages. Clean up emit/insert code. Add test report result navigation; rename report buffer. Clean up variable names and function arguments. Handle test namespace not found. Add ediff for test results. Clean up a bit. Clean up code, add doc strings, improve menus. Enable jump to line within var. Move modified functions into their proper files. Highlight non-passing test definitions. Fix some code ordering, and add a funcall. Update README and CHANGELOG for test integration. Update doc strings and commentary.
Add 'cider-test', to replace the retired 'clojure-test-mode'. Add mostly complete cider-test result layout. Enable cider-test mode and key bindings. Add interactive run functions. Rename cider-test-report-mode. Echo testing and summary messages. Clean up emit/insert code. Add test report result navigation; rename report buffer. Clean up variable names and function arguments. Handle test namespace not found. Add ediff for test results. Clean up a bit. Clean up code, add doc strings, improve menus. Enable jump to line within var. Move modified functions into their proper files. Highlight non-passing test definitions. Fix some code ordering, and add a funcall. Update README and CHANGELOG for test integration. Update doc strings and commentary.
What's in PR #625 should fit the bill. |
[Fix #613] Add clojure.test integration.
Add 'cider-test' to replace the venerable, now-retired 'clojure-test-mode'.
clojure-test-mode
is an unsupported mess full of inlined Clojure code. It's considered officially deprecated right now and it'd be nice if we bundledclojure.test
support directly into cider as it's the standard test framework. I'm seeing two options:cider-test-ns
that simply opens the output of the test run into a new bufferclojure-test-mode
.At any rate we'll need some basic middleware for running the tests and clearing their definitions before test re-runs. @jeffvalk Would you like to look into implementing this? Should be reasonable straight-forward. I'm tied up cleaning up
clojure-mode
and hunting encoding/decoding issues and won't be able to attend to this any time soon, but I want us to layclojure-test-mode
to rest once and for all.The text was updated successfully, but these errors were encountered: