test(playground): lock inert source dependency isolation
This commit is contained in:
parent
64ca9b5931
commit
5cd432ea18
@ -47,7 +47,7 @@
|
||||
"-l" package-file
|
||||
"--eval"
|
||||
(format
|
||||
"(progn (find-file %S) (unless (eq major-mode 'etaf-playground-etaf-mode) (kill-emacs 11)) (when (featurep 'etaf) (kill-emacs 12)) (princ \"ETAF source mode clean-load OK\\n\"))"
|
||||
"(progn (find-file %S) (unless (eq major-mode 'etaf-playground-etaf-mode) (kill-emacs 11)) (when (featurep 'etaf) (kill-emacs 12)) (when (featurep 'tp) (kill-emacs 13)) (when (featurep 'tp-transaction) (kill-emacs 14)) (princ \"ETAF source mode clean-load OK\\n\"))"
|
||||
source-file))))
|
||||
(unless (zerop status)
|
||||
(ert-fail
|
||||
@ -102,6 +102,22 @@
|
||||
(should (eq (plist-get (cdr condition) :missing-feature)
|
||||
'tp-transaction))))))
|
||||
|
||||
(ert-deftest etaf-playground-unrelated-file-missing-is-preserved ()
|
||||
"Runtime loading must not relabel an unrelated missing dependency as TP."
|
||||
(let ((original-require (symbol-function 'require))
|
||||
(injected
|
||||
'(file-missing "Cannot open load file"
|
||||
"No such file or directory"
|
||||
"unrelated-feature")))
|
||||
(cl-letf (((symbol-function 'require)
|
||||
(lambda (feature &optional filename noerror)
|
||||
(if (eq feature 'etaf)
|
||||
(signal (car injected) (cdr injected))
|
||||
(funcall original-require feature filename noerror)))))
|
||||
(should (equal (should-error (etaf-playground--ensure-runtime)
|
||||
:type 'file-missing)
|
||||
injected)))))
|
||||
|
||||
(defun etaf-playground-test--text (buffer)
|
||||
"Return BUFFER's plain rendered text."
|
||||
(with-current-buffer buffer
|
||||
|
||||
Loading…
Reference in New Issue
Block a user