aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorF. Jason Park2022-04-04 22:38:22 -0700
committerF. Jason Park2022-06-30 15:03:26 -0700
commit0f52e7ac68457ca8beb22cd382b1637fed35fd73 (patch)
treee179bbd79daa6a1f27a65ba673ae1629d515b59e /test
parenta3311dbce0008a23d8d6626ae6245d96ce3a20b2 (diff)
downloademacs-0f52e7ac68457ca8beb22cd382b1637fed35fd73.tar.gz
emacs-0f52e7ac68457ca8beb22cd382b1637fed35fd73.zip
Rework mutual dependency between erc and erc-backend
* lisp/erc/erc.el: Declare needed variables exported by erc-backend.el as special near the top of the file, and only require `erc-backend' after providing `erc' as a feature at the very end. * lisp/erc/erc-backend.el: Don't preemptively provide `erc-backend'. * test/lisp/erc/erc-tests.el (erc--meta--backend-dependencies): Add utility test to scrape for unused vars that may accumulate over time. (Bug#54825)
Diffstat (limited to 'test')
-rw-r--r--test/lisp/erc/erc-tests.el21
1 files changed, 21 insertions, 0 deletions
diff --git a/test/lisp/erc/erc-tests.el b/test/lisp/erc/erc-tests.el
index 520f10dd4e6..3c76cb97caf 100644
--- a/test/lisp/erc/erc-tests.el
+++ b/test/lisp/erc/erc-tests.el
@@ -48,6 +48,27 @@
48 (cl-letf (((symbol-function 'read-string) (lambda (&rest _) "1d"))) 48 (cl-letf (((symbol-function 'read-string) (lambda (&rest _) "1d")))
49 (should (equal (erc--read-time-period "foo: ") 86400)))) 49 (should (equal (erc--read-time-period "foo: ") 86400))))
50 50
51(ert-deftest erc--meta--backend-dependencies ()
52 (with-temp-buffer
53 (insert-file-contents-literally
54 (concat (file-name-sans-extension (symbol-file 'erc)) ".el"))
55 (let ((beg (search-forward ";; Defined in erc-backend"))
56 (end (search-forward "\n\n"))
57 vars)
58 (save-excursion
59 (save-restriction
60 (narrow-to-region beg end)
61 (goto-char (point-min))
62 (with-syntax-table lisp-data-mode-syntax-table
63 (condition-case _
64 (while (push (cadr (read (current-buffer))) vars))
65 (end-of-file)))))
66 (should (= (point) end))
67 (dolist (var vars)
68 (setq var (concat "\\_<" (symbol-name var) "\\_>"))
69 (ert-info (var)
70 (should (save-excursion (search-forward-regexp var nil t))))))))
71
51(ert-deftest erc-with-all-buffers-of-server () 72(ert-deftest erc-with-all-buffers-of-server ()
52 (let (proc-exnet 73 (let (proc-exnet
53 proc-onet 74 proc-onet