mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-09 15:50:40 -08:00
(loadhist-unload-element): Move ERT and cl-generic methods
* lisp/loadhist.el (loadhist-unload-element): Don't define cl-generic and ert methods here. (loadhist-unload-element) <(head define-type)>: Remove unused var `slots'. * lisp/emacs-lisp/cl-generic.el (loadhist-unload-element): Define unload method for cl-defmethod. (cl-generic-ensure-function): Remove redundant `defalias'. * lisp/emacs-lisp/ert.el (ert-set-test): Move the current-load-list setting here... (ert-deftest): ...from here. (loadhist-unload-element): Define unload method for ert-deftest.
This commit is contained in:
parent
f07b12c1d0
commit
69fb12a66b
3 changed files with 24 additions and 15 deletions
|
|
@ -136,8 +136,15 @@ Emacs bug 6581 at URL `http://debbugs.gnu.org/cgi/bugreport.cgi?bug=6581'."
|
|||
;; ert-test objects. It designates an anonymous test.
|
||||
(error "Attempt to define a test named nil"))
|
||||
(put symbol 'ert--test definition)
|
||||
;; Register in load-history, so `symbol-file' can find us, and so
|
||||
;; unload-feature can unload our tests.
|
||||
(cl-pushnew `(ert-deftest . ,symbol) current-load-list :test #'equal)
|
||||
definition)
|
||||
|
||||
(cl-defmethod loadhist-unload-element ((x (head ert-deftest)))
|
||||
(let ((name (cdr x)))
|
||||
(put name 'ert--test nil)))
|
||||
|
||||
(defun ert-make-test-unbound (symbol)
|
||||
"Make SYMBOL name no test. Return SYMBOL."
|
||||
(cl-remprop symbol 'ert--test)
|
||||
|
|
@ -214,12 +221,6 @@ description of valid values for RESULT-TYPE.
|
|||
,@(when tags-supplied-p
|
||||
`(:tags ,tags))
|
||||
:body (lambda () ,@body)))
|
||||
;; This hack allows `symbol-file' to associate `ert-deftest'
|
||||
;; forms with files, and therefore enables `find-function' to
|
||||
;; work with tests. However, it leads to warnings in
|
||||
;; `unload-feature', which doesn't know how to undefine tests
|
||||
;; and has no mechanism for extension.
|
||||
(push '(ert-deftest . ,name) current-load-list)
|
||||
',name))))
|
||||
|
||||
;; We use these `put' forms in addition to the (declare (indent)) in
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue