aboutsummaryrefslogtreecommitdiff
path: root/tests/test-keyboard-compat-setup.el
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test-keyboard-compat-setup.el')
-rw-r--r--tests/test-keyboard-compat-setup.el22
1 files changed, 16 insertions, 6 deletions
diff --git a/tests/test-keyboard-compat-setup.el b/tests/test-keyboard-compat-setup.el
index 1c5cd434..a23e24e1 100644
--- a/tests/test-keyboard-compat-setup.el
+++ b/tests/test-keyboard-compat-setup.el
@@ -61,6 +61,14 @@ string can return a meta-prefix event count rather than nil.)"
(cj/keyboard-compat-terminal-setup)
(should (equal input-decode-map (make-sparse-keymap)))))
+(ert-deftest test-keyboard-compat-terminal-setup-on-tty-setup-hook ()
+ "Normal: terminal setup is registered on `tty-setup-hook', which runs for each
+new tty frame. `input-decode-map' is terminal-local, so `emacs-startup-hook'
+\(once, at daemon start, with no tty) leaves every later `emacsclient -t' frame
+without the arrow-key decodings. The GUI half already frame-scopes itself."
+ (should (memq 'cj/keyboard-compat-terminal-setup tty-setup-hook))
+ (should-not (memq 'cj/keyboard-compat-terminal-setup emacs-startup-hook)))
+
;; -------------------------- cj/keyboard-compat-gui-setup ---------------------
(defmacro test-kbc--gui (gui-p &rest body)
@@ -71,18 +79,20 @@ string can return a meta-prefix event count rather than nil.)"
,@body)))
(defconst test-kbc--meta-shift-letters
- '(?o ?m ?y ?f ?w ?e ?l ?r ?v ?h ?t ?z ?u ?d ?i ?c ?b ?k)
- "The 18 letters whose M-<UPPER> form is translated to M-S-<lower> in GUI mode.")
+ '(?o ?m ?y ?f ?w ?e ?l ?r ?v ?h ?t ?z ?u ?d ?i ?c ?b)
+ "The 17 letters whose M-<UPPER> form is translated to M-S-<lower> in GUI mode.")
(ert-deftest test-keyboard-compat-gui-setup-translates-spot-checks ()
- "Normal: in GUI mode, M-O -> M-S-o and M-K -> M-S-k (sampled)."
+ "Normal: in GUI mode, M-O -> M-S-o and M-B -> M-S-b (sampled).
+M-K is no longer translated: show-kill-ring, its only consumer, was retired."
(test-kbc--gui t
(cj/keyboard-compat-gui-setup)
(should (equal (lookup-key key-translation-map (kbd "M-O")) (kbd "M-S-o")))
- (should (equal (lookup-key key-translation-map (kbd "M-K")) (kbd "M-S-k")))
- (should (equal (lookup-key key-translation-map (kbd "M-D")) (kbd "M-S-d")))))
+ (should (equal (lookup-key key-translation-map (kbd "M-B")) (kbd "M-S-b")))
+ (should (equal (lookup-key key-translation-map (kbd "M-D")) (kbd "M-S-d")))
+ (should-not (lookup-key key-translation-map (kbd "M-K")))))
-(ert-deftest test-keyboard-compat-gui-setup-translates-all-eighteen ()
+(ert-deftest test-keyboard-compat-gui-setup-translates-all-seventeen ()
"Normal: every documented M-<UPPER> maps to its M-S-<lower> form."
(test-kbc--gui t
(cj/keyboard-compat-gui-setup)