aboutsummaryrefslogtreecommitdiff
path: root/tests/test-erc-config--generate-buffer-name.el
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-06-20 12:40:21 -0400
committerCraig Jennings <c@cjennings.net>2026-06-20 12:40:21 -0400
commitd3782adb31342d3b25d997a0f4fe79e41ff97c11 (patch)
tree591abd843eb2ec6f6a81ab532a5eeb0534e7b2fb /tests/test-erc-config--generate-buffer-name.el
parentf3713dcbcea7b8a8f553d431035f6c22c4215170 (diff)
downloaddotemacs-d3782adb31342d3b25d997a0f4fe79e41ff97c11.tar.gz
dotemacs-d3782adb31342d3b25d997a0f4fe79e41ff97c11.zip
refactor(erc): lift cj/erc-generate-buffer-name out of :config
The buffer-name function lived inside the erc use-package :config, so it was unreachable under make test (no package-initialize). Move it to top level; :config keeps the erc-generate-buffer-name-function setq. Adds unit coverage for the server-and-channel, server-only, and missing-piece cases.
Diffstat (limited to 'tests/test-erc-config--generate-buffer-name.el')
-rw-r--r--tests/test-erc-config--generate-buffer-name.el31
1 files changed, 31 insertions, 0 deletions
diff --git a/tests/test-erc-config--generate-buffer-name.el b/tests/test-erc-config--generate-buffer-name.el
new file mode 100644
index 000000000..cbc716c82
--- /dev/null
+++ b/tests/test-erc-config--generate-buffer-name.el
@@ -0,0 +1,31 @@
+;;; test-erc-config--generate-buffer-name.el --- Tests for cj/erc-generate-buffer-name -*- lexical-binding: t; -*-
+
+;;; Commentary:
+;; cj/erc-generate-buffer-name formats an ERC buffer name as SERVER-CHANNEL.
+;; It was defined inside the erc use-package :config (so unreachable under
+;; `make test'); lifting it to top level makes it unit-testable.
+
+;;; Code:
+
+(require 'ert)
+
+(add-to-list 'load-path (expand-file-name "modules" user-emacs-directory))
+(require 'erc-config)
+
+(ert-deftest test-erc-generate-buffer-name-server-and-channel ()
+ "Normal: a target yields SERVER-CHANNEL."
+ (should (equal (cj/erc-generate-buffer-name '(:server "libera" :target "#emacs"))
+ "libera-#emacs")))
+
+(ert-deftest test-erc-generate-buffer-name-server-only ()
+ "Boundary: no target yields just the server name."
+ (should (equal (cj/erc-generate-buffer-name '(:server "libera"))
+ "libera")))
+
+(ert-deftest test-erc-generate-buffer-name-missing-pieces ()
+ "Boundary: missing server/target degrade to empty strings, not nil."
+ (should (equal (cj/erc-generate-buffer-name '(:target "#emacs")) "-#emacs"))
+ (should (equal (cj/erc-generate-buffer-name '()) "")))
+
+(provide 'test-erc-config--generate-buffer-name)
+;;; test-erc-config--generate-buffer-name.el ends here