Closed
Description
I get sporadic errors on some of my projects, that render cider-test
unusable after they occur. I created a repository that demonstrates
this problem over here:
https://github.com/r0man/cider-test-error
I have to admit that this example is maybe a bit experimental, but
running the test via lein test
and via clojure-test-mode
works,
and I think running them via cider should work too.
The error can be triggered with the following commands in the
repository I linked above.
(find-file "test/kaboom/core_test.clj")
(cider-jack-in)
(cider-load-current-buffer)
(cider-test-run-tests)
This raises an error or prints the following stack trace when
debug-on-error
is enabled.
Debugger entered--Lisp error: (void-variable results)
#[257 "\306�\305 \n\"\307\n\235\203��\310\311\300\"\202.� \205.�\300� �\312\300 \"\210\313
!\210\314\315��\316\"\300
$#\207" ["kaboom.core-test" results status cider-test-last-test-ns cider-test-last-results summary nrepl-dbind-response "namespace-not-found" message "No tests namespace: %s" cider-test-highlight-problems cider-test-echo-summary cider-test-render-report cider-popup-buffer t cider-test-report-buffer] 9 "\n\n(fn RESPONSE)"]((dict ("id" . "19") ("ns" . "kaboom.core-test") ("results" dict ("a-test" (dict ("context" . "") ("index" . 0) ("message") ("ns" . "kaboom.core-test") ("type" . "pass") ("var" . "a-test")))) ("session" . "91c14801-87be-449b-bd45-92bf3f4556c1") ("summary" dict ("error" . 0) ("fail" . 0) ("pass" . 1) ("test" . 1) ("var" . 1))))
funcall(#[257 "\306�\305 \n\"\307\n\235\203��\310\311\300\"\202.� \205.�\300� �\312\300 \"\210\313
!\210\314\315��\316\"\300
$#\207" ["kaboom.core-test" results status cider-test-last-test-ns cider-test-last-results summary nrepl-dbind-response "namespace-not-found" message "No tests namespace: %s" cider-test-highlight-problems cider-test-echo-summary cider-test-render-report cider-popup-buffer t cider-test-report-buffer] 9 "\n\n(fn RESPONSE)"] (dict ("id" . "19") ("ns" . "kaboom.core-test") ("results" dict ("a-test" (dict ("context" . "") ("index" . 0) ("message") ("ns" . "kaboom.core-test") ("type" . "pass") ("var" . "a-test")))) ("session" . "91c14801-87be-449b-bd45-92bf3f4556c1") ("summary" dict ("error" . 0) ("fail" . 0) ("pass" . 1) ("test" . 1) ("var" . 1))))
(if callback (funcall callback response) (nrepl-default-handler response))
(let ((callback (or (gethash id nrepl-pending-requests) (gethash id nrepl-completed-requests)))) (if callback (funcall callback response) (nrepl-default-handler response)))
(let ((id (cdr (assoc "id" response)))) (let ((callback (or (gethash id nrepl-pending-requests) (gethash id nrepl-completed-requests)))) (if callback (funcall callback response) (nrepl-default-handler response))))
nrepl-dispatch((dict ("id" . "19") ("ns" . "kaboom.core-test") ("results" dict ("a-test" (dict ("context" . "") ("index" . 0) ("message") ("ns" . "kaboom.core-test") ("type" . "pass") ("var" . "a-test")))) ("session" . "91c14801-87be-449b-bd45-92bf3f4556c1") ("summary" dict ("error" . 0) ("fail" . 0) ("pass" . 1) ("test" . 1) ("var" . 1))))
(let ((r (car --dolist-tail--))) (nrepl-dispatch r) (setq --dolist-tail-- (cdr --dolist-tail--)))
(while --dolist-tail-- (let ((r (car --dolist-tail--))) (nrepl-dispatch r) (setq --dolist-tail-- (cdr --dolist-tail--))))
(let ((--dolist-tail-- responses)) (while --dolist-tail-- (let ((r (car --dolist-tail--))) (nrepl-dispatch r) (setq --dolist-tail-- (cdr --dolist-tail--)))))
(progn (let ((--dolist-tail-- responses)) (while --dolist-tail-- (let ((r (car --dolist-tail--))) (nrepl-dispatch r) (setq --dolist-tail-- (cdr --dolist-tail--))))))
(let ((responses (nrepl-decode-current-buffer))) (progn (let ((--dolist-tail-- responses)) (while --dolist-tail-- (let ((r (car --dolist-tail--))) (nrepl-dispatch r) (setq --dolist-tail-- (cdr --dolist-tail--)))))))
(while (and (not (derived-mode-p (quote cider-repl-mode))) (> (buffer-size) 1)) (let ((responses (nrepl-decode-current-buffer))) (progn (let ((--dolist-tail-- responses)) (while --dolist-tail-- (let ((r ...)) (nrepl-dispatch r) (setq --dolist-tail-- (cdr --dolist-tail--))))))))
(let ((nrepl-connection-dispatch (current-buffer))) (while (and (not (derived-mode-p (quote cider-repl-mode))) (> (buffer-size) 1)) (let ((responses (nrepl-decode-current-buffer))) (progn (let ((--dolist-tail-- responses)) (while --dolist-tail-- (let (...) (nrepl-dispatch r) (setq --dolist-tail-- ...))))))))
(save-current-buffer (set-buffer (process-buffer process)) (let ((nrepl-connection-dispatch (current-buffer))) (while (and (not (derived-mode-p (quote cider-repl-mode))) (> (buffer-size) 1)) (let ((responses (nrepl-decode-current-buffer))) (progn (let ((--dolist-tail-- responses)) (while --dolist-tail-- (let ... ... ...))))))))
nrepl-handle-process-output(#<process nrepl>)
(if (accept-process-output process nrepl-decode-timeout) nil (nrepl-handle-process-output process))
(progn (if (accept-process-output process nrepl-decode-timeout) nil (nrepl-handle-process-output process)))
(if (eq 101 (aref string (1- (length string)))) (progn (if (accept-process-output process nrepl-decode-timeout) nil (nrepl-handle-process-output process))))
nrepl-net-filter(#<process nrepl> "d2:id2:197:session36:91c14801-87be-449b-bd45-92bf3f4556c16:statusl4:doneee")
accept-process-output(#<process nrepl> 0.01)
(if (accept-process-output process nrepl-decode-timeout) nil (nrepl-handle-process-output process))
(progn (if (accept-process-output process nrepl-decode-timeout) nil (nrepl-handle-process-output process)))
(if (eq 101 (aref string (1- (length string)))) (progn (if (accept-process-output process nrepl-decode-timeout) nil (nrepl-handle-process-output process))))
nrepl-net-filter(#<process nrepl> "d2:id2:192:ns16:kaboom.core-test7:resultsd6:a-testld7:context0:5:indexi0e7:messagele2:ns16:kaboom.core-test4:type4:pass3:var6:a-testeee7:session36:91c14801-87be-449b-bd45-92bf3f4556c17:summaryd5:errori0e4:faili0e4:passi1e4:testi1e3:vari1eee")
My setup is:
- CIDER 0.7.0alpha (package: 20140624.1355)
- GNU Emacs 24.3.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.12.2) of 2014-06-11 on var-lib-archbuild-staging-x86_64-jgc
- Linux bombaclaat 3.15.1-1-ARCH command for macroexpanding the expression #1 SMP PREEMPT Tue Jun 17 09:32:20 CEST 2014 x86_64 GNU/Linux
Any help would be appreciated.
Thanks, r0man
Metadata
Metadata
Assignees
Labels
No labels