1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-11 16:40:45 -08:00

; Tracing for eieio-test random failure (Bug#24503)

* test/Makefile.in [EMACS_HYDRA_CI]: Always show log for eieio-tests.
* test/lisp/emacs-lisp/eieio-tests/eieio-tests.el (top-level): Trace
cl-generic functions.
(eieio-test-dump-trace): New function.
(eieio-test-37-obsolete-name-in-constructor): Use it.
This commit is contained in:
Noam Postavsky 2017-11-30 20:51:07 -05:00
parent 6e0008890f
commit cfa50d30f2
2 changed files with 28 additions and 4 deletions

View file

@ -887,15 +887,33 @@ Subclasses to override slot attributes.")
(should (= (length (eieio-build-class-alist 'opt-test1 nil)) 2))
(should (= (length (eieio-build-class-alist 'opt-test1 t)) 1)))
(mapatoms (lambda (a)
(when (and (fboundp a)
(string-match "\\`cl--?generic"
(symbol-name a)))
(trace-function-background a))))
(defclass eieio--testing () ())
(defmethod constructor :static ((_x eieio--testing) newname &rest _args)
(list newname 2))
(defun eieio-test-dump-trace ()
(message "%s" (with-current-buffer "*trace-output*"
(goto-char (point-min))
(while (re-search-forward "[\0-\010\013-\037]" nil t)
(insert (prog1 (format "\\%03o" (char-before))
(delete-char -1))))
(buffer-string))))
(eieio-test-dump-trace)
(ert-deftest eieio-test-37-obsolete-name-in-constructor ()
;; FIXME repeated intermittent failures on hydra (bug#24503)
(skip-unless (not (getenv "EMACS_HYDRA_CI")))
(should (equal (eieio--testing "toto") '("toto" 2))))
(with-current-buffer "*trace-output*"
(erase-buffer))
(unwind-protect
(should (equal (eieio--testing "toto") '("toto" 2)))
(eieio-test-dump-trace)))
(ert-deftest eieio-autoload ()
"Tests to see whether reftex-auc has been autoloaded"