diff options
| author | F. Jason Park | 2022-03-13 22:39:36 -0700 |
|---|---|---|
| committer | F. Jason Park | 2022-03-19 01:46:18 -0700 |
| commit | 17bd063a67404a13ff719830336693d7cd7f6d79 (patch) | |
| tree | 954c404ab65ee645bb868fef4eec3d13bbc2bcc8 | |
| parent | 43ee6f291d88453f0d6dec76fe80f4e7503abc81 (diff) | |
| download | emacs-17bd063a67404a13ff719830336693d7cd7f6d79.tar.gz emacs-17bd063a67404a13ff719830336693d7cd7f6d79.zip | |
Add unit test for erc--switch-to-buffer
* test/lisp/erc/erc-tests.el (erc--switch-to-buffer): Add new test.
(Bug#53617)
| -rw-r--r-- | test/lisp/erc/erc-tests.el | 57 |
1 files changed, 56 insertions, 1 deletions
diff --git a/test/lisp/erc/erc-tests.el b/test/lisp/erc/erc-tests.el index 5603e764547..5a2b90a9402 100644 --- a/test/lisp/erc/erc-tests.el +++ b/test/lisp/erc/erc-tests.el | |||
| @@ -21,7 +21,7 @@ | |||
| 21 | 21 | ||
| 22 | ;;; Code: | 22 | ;;; Code: |
| 23 | 23 | ||
| 24 | (require 'ert) | 24 | (require 'ert-x) |
| 25 | (require 'erc) | 25 | (require 'erc) |
| 26 | (require 'erc-ring) | 26 | (require 'erc-ring) |
| 27 | (require 'erc-networks) | 27 | (require 'erc-networks) |
| @@ -114,6 +114,61 @@ | |||
| 114 | (should (get-buffer "#spam")) | 114 | (should (get-buffer "#spam")) |
| 115 | (kill-buffer "#spam"))) | 115 | (kill-buffer "#spam"))) |
| 116 | 116 | ||
| 117 | (ert-deftest erc--switch-to-buffer () | ||
| 118 | (defvar erc-modified-channels-alist) ; lisp/erc/erc-track.el | ||
| 119 | |||
| 120 | (let ((proc (start-process "aNet" (current-buffer) "true")) | ||
| 121 | (erc-modified-channels-alist `(("fake") (,(messages-buffer)))) | ||
| 122 | (inhibit-message noninteractive) | ||
| 123 | (completion-fail-discreetly t) ; otherwise ^G^G printed to .log file | ||
| 124 | ;; | ||
| 125 | erc-kill-channel-hook erc-kill-server-hook erc-kill-buffer-hook) | ||
| 126 | |||
| 127 | (with-current-buffer (get-buffer-create "server") | ||
| 128 | (erc-mode) | ||
| 129 | (set-process-buffer (setq erc-server-process proc) (current-buffer)) | ||
| 130 | (with-current-buffer (get-buffer-create "#chan") | ||
| 131 | (erc-mode) | ||
| 132 | (setq erc-server-process proc)) | ||
| 133 | (with-current-buffer (get-buffer-create "#foo") | ||
| 134 | (erc-mode) | ||
| 135 | (setq erc-server-process proc)) | ||
| 136 | |||
| 137 | (ert-info ("Channel #chan selectable from server buffer") | ||
| 138 | (ert-simulate-keys (list ?# ?c ?h ?a ?n ?\C-m) | ||
| 139 | (should (string= "#chan" (erc--switch-to-buffer)))))) | ||
| 140 | |||
| 141 | (ert-info ("Channel #foo selectable from non-ERC buffer") | ||
| 142 | (ert-simulate-keys (list ?# ?f ?o ?o ?\C-m) | ||
| 143 | (should (string= "#foo" (erc--switch-to-buffer))))) | ||
| 144 | |||
| 145 | (ert-info ("Default selectable") | ||
| 146 | (ert-simulate-keys (list ?\C-m) | ||
| 147 | (should (string= "*Messages*" (erc--switch-to-buffer))))) | ||
| 148 | |||
| 149 | (ert-info ("Extant but non-ERC buffer not selectable") | ||
| 150 | (get-buffer-create "#fake") ; not ours | ||
| 151 | (ert-simulate-keys (kbd "#fake C-m C-a C-k C-m") | ||
| 152 | ;; Initial query fails ~~~~~~^; clearing input accepts default | ||
| 153 | (should (string= "*Messages*" (erc--switch-to-buffer))))) | ||
| 154 | |||
| 155 | (with-current-buffer (get-buffer-create "other") | ||
| 156 | (erc-mode) | ||
| 157 | (setq erc-server-process (start-process "bNet" (current-buffer) "true"))) | ||
| 158 | |||
| 159 | (ert-info ("Foreign ERC buffer not selectable") | ||
| 160 | (ert-simulate-keys (kbd "other C-m C-a C-k C-m") | ||
| 161 | (with-current-buffer "server" | ||
| 162 | (should (string= "*Messages*" (erc--switch-to-buffer)))))) | ||
| 163 | |||
| 164 | (ert-info ("Any ERC-buffer selectable from non-ERC buffer") | ||
| 165 | (should-not (eq major-mode 'erc-mode)) | ||
| 166 | (ert-simulate-keys (list ?o ?t ?h ?e ?r ?\C-m) | ||
| 167 | (should (string= "other" (erc--switch-to-buffer))))) | ||
| 168 | |||
| 169 | (dolist (b '("server" "other" "#chan" "#foo" "#fake")) | ||
| 170 | (kill-buffer b)))) | ||
| 171 | |||
| 117 | (ert-deftest erc-lurker-maybe-trim () | 172 | (ert-deftest erc-lurker-maybe-trim () |
| 118 | (let (erc-lurker-trim-nicks | 173 | (let (erc-lurker-trim-nicks |
| 119 | (erc-lurker-ignore-chars "_`")) | 174 | (erc-lurker-ignore-chars "_`")) |