branch: elpa/casual
commit c3018780e9c1492bfacc5fb94df8a7b262b7c47f
Author: Charles Choi <[email protected]>
Commit: Charles Choi <[email protected]>
Add info-apropos to Casual Info
- #120 Adds command `info-apropos` to `casual-info-tmenu`.
- Update unit test for `casual-info-tmenu`.
---
lisp/casual-info.el | 3 +-
tests/test-casual-info.el | 148 +++++++++++++++++++++++++++++-----------------
2 files changed, 97 insertions(+), 54 deletions(-)
diff --git a/lisp/casual-info.el b/lisp/casual-info.el
index bc1f6a2f91..d909d1e2c3 100644
--- a/lisp/casual-info.el
+++ b/lisp/casual-info.el
@@ -62,7 +62,8 @@
:pad-keys t
("C-s" "I-search…" isearch-forward)
("s" "Search…" Info-search)
- ("S" "Case sensitive…" Info-search-case-sensitively)]
+ ("S" "Case sensitive…" Info-search-case-sensitively)
+ ("a" "Apropos…" info-apropos)]
["History"
:pad-keys t
diff --git a/tests/test-casual-info.el b/tests/test-casual-info.el
index b5b8d3fb1d..fa88c5052e 100644
--- a/tests/test-casual-info.el
+++ b/tests/test-casual-info.el
@@ -28,59 +28,101 @@
(require 'casual-info-test-utils)
(require 'casual-info)
-(ert-deftest test-casual-info-tmenu-bindings ()
- (casualt-info-setup)
- (let ((test-vectors (list)))
- (push (casualt-suffix-test-vector "d" #'Info-directory) test-vectors)
- (push (casualt-suffix-test-vector "t" #'Info-top-node) test-vectors)
- (push (casualt-suffix-test-vector "T" #'Info-toc) test-vectors)
- ;;(push (casualt-suffix-test-vector "m" #'Info-menu) test-vectors)
- ;;(push (casualt-suffix-test-vector "g" #'Info-goto-node) test-vectors)
- ;;(push (casualt-suffix-test-vector "i" #'Info-index) test-vectors)
- ;;(push (casualt-suffix-test-vector "I" #'Info-virtual-index) test-vectors)
-
- (push (casualt-suffix-test-vector "L" #'Info-history) test-vectors)
- (push (casualt-suffix-test-vector "Û" #'Info-history-back) test-vectors)
- (push (casualt-suffix-test-vector "Ý" #'Info-history-forward) test-vectors)
-
- (push (casualt-suffix-test-vector " " #'Info-scroll-up) test-vectors)
- (push (casualt-suffix-test-vector "" #'Info-scroll-down) test-vectors)
-
- (push (casualt-suffix-test-vector "k" #'Info-prev-reference) test-vectors)
- (push (casualt-suffix-test-vector "j" #'Info-next-reference) test-vectors)
-
- (push (casualt-suffix-test-vector "p"
#'casual-info-browse-backward-paragraph) test-vectors)
- (push (casualt-suffix-test-vector "n"
#'casual-info-browse-forward-paragraph) test-vectors)
-
- (push (casualt-suffix-test-vector "[" #'Info-backward-node) test-vectors)
- (push (casualt-suffix-test-vector "]" #'Info-forward-node) test-vectors)
-
- (push (casualt-suffix-test-vector "h" #'Info-prev) test-vectors)
- (push (casualt-suffix-test-vector "l" #'Info-next) test-vectors)
-
- (push (casualt-suffix-test-vector "<" #'Info-top-node) test-vectors)
- (push (casualt-suffix-test-vector ">" #'Info-final-node) test-vectors)
-
- (push (casualt-suffix-test-vector "^" #'Info-up) test-vectors)
-
- (push (casualt-suffix-test-vector "J" #'bookmark-jump) test-vectors)
- (push (casualt-suffix-test-vector "B" #'bookmark-set) test-vectors)
- (push (casualt-suffix-test-vector "b" #'ibuffer) test-vectors)
- (push (casualt-suffix-test-vector "c" #'Info-copy-current-node-name)
test-vectors)
- ;;(push (casualt-suffix-test-vector "G" #'Info-goto-node-web) test-vectors)
-
- (push (casualt-suffix-test-vector "" #'casual-info-new-info-frame)
test-vectors)
- (push (casualt-suffix-test-vector "î" #'clone-buffer) test-vectors)
- ;;(push (casualt-suffix-test-vector "
" #'Info-follow-nearest-node) test-vectors)
- ;;(push (casualt-suffix-test-vector " " #'Info-scroll-up) test-vectors)
-
- (push (casualt-suffix-test-vector "," #'casual-info-settings-tmenu)
test-vectors)
- (push (casualt-suffix-test-vector "q" #'quit-window) test-vectors)
-
- (casualt-suffix-testbench-runner test-vectors
- #'casual-info-tmenu
- '(lambda () (random 5000))))
- (casualt-info-breakdown t))
+(ert-deftest test-casual-info-tmenu ()
+ (let ((tmpfile "casual-info-tmenu.txt"))
+ (casualt-info-setup)
+ (cl-letf (
+ (casualt-mock #'Info-directory)
+ (casualt-mock #'Info-top-node)
+ (casualt-mock #'Info-toc)
+ (casualt-mock #'Info-menu)
+ (casualt-mock #'Info-goto-node)
+ (casualt-mock #'Info-index)
+ (casualt-mock #'Info-virtual-index)
+ (casualt-mock #'Info-history)
+ (casualt-mock #'Info-history-back)
+ (casualt-mock #'Info-history-forward)
+ (casualt-mock #'Info-search)
+ (casualt-mock #'isearch-forward)
+ (casualt-mock #'Info-search-case-sensitively)
+ (casualt-mock #'Info-scroll-up)
+ (casualt-mock #'Info-scroll-down)
+ (casualt-mock #'Info-prev-reference)
+ (casualt-mock #'Info-next-reference)
+ (casualt-mock #'Info-backward-node)
+ (casualt-mock #'Info-forward-node)
+ (casualt-mock #'Info-prev)
+ (casualt-mock #'Info-next)
+ (casualt-mock #'Info-top-node)
+ (casualt-mock #'Info-final-node)
+ (casualt-mock #'Info-follow-nearest-node)
+ (casualt-mock #'Info-up)
+ (casualt-mock #'Info-copy-current-node-name)
+ (casualt-mock #'Info-goto-node-web)
+ (casualt-mock #'clone-buffer)
+ (casualt-mock #'bookmark-jump)
+ (casualt-mock #'bookmark-set)
+ (casualt-mock #'ibuffer)
+ (casualt-mock #'quit-window)
+ (casualt-mock #'info-apropos))
+
+ (let ((test-vectors
+ '(;; Overview
+ (:binding "d" :command Info-directory)
+ (:binding "t" :command Info-top-node)
+ (:binding "T" :command Info-toc)
+
+ ;; Goto
+ (:binding "m" :command Info-menu)
+ ;;(:binding "g" :command Info-goto-node)
+ (:binding "i" :command Info-index)
+ (:binding "I" :command Info-virtual-index)
+
+ ;; Search
+ (:binding "C-s" :command isearch-forward)
+ (:binding "s" :command Info-search)
+ (:binding "S" :command Info-search-case-sensitively)
+ (:binding "a" :command info-apropos)
+
+ ;; History
+ (:binding "L" :command Info-history)
+ (:binding "M-[" :command Info-history-back)
+ (:binding "M-]" :command Info-history-forward)
+
+ ;; Scroll
+ ;;(:binding "S-SPC" :command Info-scroll-down)
+ (:binding "SPC" :command Info-scroll-up)
+ (:binding "DEL" :command Info-scroll-down)
+
+ ;; Navigation
+ (:binding "k" :command Info-prev-reference)
+ (:binding "j" :command Info-next-reference)
+ (:binding "p" :command casual-info-browse-backward-paragraph)
+ (:binding "n" :command casual-info-browse-forward-paragraph)
+ (:binding "[" :command Info-backward-node)
+ (:binding "]" :command Info-forward-node)
+ (:binding "h" :command Info-prev)
+ (:binding "l" :command Info-next)
+ (:binding "<" :command Info-top-node)
+ (:binding ">" :command Info-final-node)
+ (:binding "RET" :command Info-follow-nearest-node)
+ (:binding "^" :command Info-up)
+
+ ;; Quick
+ (:binding "c" :command Info-copy-current-node-name)
+ (:binding "M-n" :command clone-buffer)
+ (:binding "C-M-n" :command casual-info-new-info-frame)
+ (:binding "G" :command Info-goto-node-web)
+
+ ;; Menu Navigation
+ (:binding "," :command casual-info-settings-tmenu)
+ (:binding "q" :command quit-window))))
+
+ (info "Emacs")
+ (casualt-suffix-testcase-runner test-vectors
+ #'casual-info-tmenu
+ '(lambda () (random 5000)))))
+ (casualt-info-breakdown t)))
(provide 'test-casual-info)
;;; test-casual-info.el ends here