[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/bash-completion 581864111e 039/313: integration test harne
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/bash-completion 581864111e 039/313: integration test harness, process buffer cleanup, hidden buffer |
Date: |
Sat, 3 Dec 2022 10:59:13 -0500 (EST) |
branch: elpa/bash-completion
commit 581864111ee4434715d225a7b9cd82b0d9450a05
Author: Stephane Zermatten <szermatt@gmx.net>
Commit: Stephane Zermatten <szermatt@gmx.net>
integration test harness, process buffer cleanup, hidden buffer
---
bash-completion.el | 15 +++++++++++----
bash-completion_test.el | 51 +++++++++++++++++++++++++++++--------------------
2 files changed, 41 insertions(+), 25 deletions(-)
diff --git a/bash-completion.el b/bash-completion.el
index 379057e45a..35d0fcaa69 100644
--- a/bash-completion.el
+++ b/bash-completion.el
@@ -260,7 +260,7 @@ The result is a list of candidates, which might be empty."
(setq process
(start-process
"*bash-completion*"
- "*bash-completion*"
+ (generate-new-buffer-name " bash-completion")
bash-completion-prog
"--noediting"))
(set-process-query-on-exit-flag process nil)
@@ -289,7 +289,7 @@ The result is a list of candidates, which might be empty."
(setenv "EMACS_BASH_COMPLETE" nil)
(when process
(condition-case err
- (kill-process process)
+ (bash-completion-kill process)
(error nil))))))))
(defun bash-completion-cd-command-prefix ()
@@ -326,10 +326,17 @@ The result is a list of candidates, which might be empty."
(defun bash-completion-reset ()
(interactive)
- (when (bash-completion-is-running)
- (kill-process bash-completion-process))
+ (bash-completion-kill bash-completion-process)
(setq bash-completion-process nil))
+(defun bash-completion-kill (process)
+ (when process
+ (when (eq 'run (process-status process))
+ (kill-process process))
+ (let ((buffer (process-buffer process)))
+ (when (buffer-live-p buffer)
+ (kill-buffer buffer)))))
+
(defun bash-completion-buffer ()
(process-buffer (bash-completion-require-process)))
diff --git a/bash-completion_test.el b/bash-completion_test.el
index 09cb8bada8..1239869ea2 100644
--- a/bash-completion_test.el
+++ b/bash-completion_test.el
@@ -446,34 +446,43 @@ garbage
))
;; ---------- integration tests
+
+ (defmacro bash-completion_test-harness (&rest body)
+ `(let ((bash-completion-process nil) (bash-completion-alist nil))
+ (unwind-protect
+ (progn ,@body)
+ ;; tearDown
+ (condition-case err
+ (when bash-completion-process
+ (let ((buffer (process-buffer bash-completion-process)))
+ (kill-process bash-completion-process)
+ (kill-buffer buffer)))
+ (error (message "error in bash-completion_test tearDown: %s" err))))))
+
(put 'bash-completion-regress-integration 'regression-suite t)
(setq bash-completion-regress-integration '(
("bash-completion interaction"
- (let ((bash-completion-process nil)
- (bash-completion-alist nil))
- (list
- (bash-completion-is-running)
- (buffer-live-p (bash-completion-buffer))
- (bash-completion-is-running)
- (bash-completion-comm "hel" 4 '("hel") 0)
- (progn
- (bash-completion-send "echo $EMACS_BASH_COMPLETE")
- (with-current-buffer (bash-completion-buffer)
- (buffer-string)))
- (bash-completion-reset)
- (bash-completion-is-running)))
+ (bash-completion_test-harness
+ (list
+ (bash-completion-is-running)
+ (buffer-live-p (bash-completion-buffer))
+ (bash-completion-is-running)
+ (bash-completion-comm "hel" 4 '("hel") 0)
+ (progn
+ (bash-completion-send "echo $EMACS_BASH_COMPLETE")
+ (with-current-buffer (bash-completion-buffer)
+ (buffer-string)))
+ (bash-completion-reset)
+ (bash-completion-is-running)))
'(nil t t ("help ") "t\n" nil nil))
("bash-completion setenv"
- (let ((bash-completion-process nil)
- (bash-completion-alist nil))
- (prog1
- (progn
- (bash-completion-send "echo $EMACS_BASH_COMPLETE")
- (with-current-buffer (bash-completion-buffer)
- (buffer-string)))
- (bash-completion-reset)))
+ (bash-completion_test-harness
+ (bash-completion-send "echo $EMACS_BASH_COMPLETE")
+ (with-current-buffer (bash-completion-buffer)
+ (buffer-string)))
"t\n")
+
)))
;; Run diagnostics when this module is evaluated or compiled
- [nongnu] elpa/bash-completion 2378b04eeb 140/313: More easily call bash-completion-dynamic-complete-nocomint, faking bash, (continued)
- [nongnu] elpa/bash-completion 2378b04eeb 140/313: More easily call bash-completion-dynamic-complete-nocomint, faking bash, ELPA Syncer, 2022/12/03
- [nongnu] elpa/bash-completion 43348d0be1 143/313: Bugfixes: remove references to nonexistent variables, such as, ELPA Syncer, 2022/12/03
- [nongnu] elpa/bash-completion 583d1dde61 151/313: Remove usage of seq-position with a custom implementation., ELPA Syncer, 2022/12/03
- [nongnu] elpa/bash-completion 664452aca2 157/313: Merge pull request #22 from kfogel/21-fix-completion-re-21149fdc, ELPA Syncer, 2022/12/03
- [nongnu] elpa/bash-completion ad8d72c626 162/313: README nit pick ; ), ELPA Syncer, 2022/12/03
- [nongnu] elpa/bash-completion c494a89070 168/313: Run tests under Emacs 24.1: alias letf to cl-letf., ELPA Syncer, 2022/12/03
- [nongnu] elpa/bash-completion f523a290a6 169/313: Make the integration tests run on Emacs 24.1., ELPA Syncer, 2022/12/03
- [nongnu] elpa/bash-completion bbff4fa527 172/313: Merge branch 'master' of github.com:szermatt/emacs-bash-completion, ELPA Syncer, 2022/12/03
- [nongnu] elpa/bash-completion b307dc24c3 005/313: keep cword, ELPA Syncer, 2022/12/03
- [nongnu] elpa/bash-completion a79137cc86 004/313: escaped quotes, ELPA Syncer, 2022/12/03
- [nongnu] elpa/bash-completion 581864111e 039/313: integration test harness, process buffer cleanup, hidden buffer,
ELPA Syncer <=
- [nongnu] elpa/bash-completion 3e1481741c 031/313: remove messages, ELPA Syncer, 2022/12/03
- [nongnu] elpa/bash-completion 0d360a45cd 017/313: fixed test case, ELPA Syncer, 2022/12/03
- [nongnu] elpa/bash-completion c28492a749 036/313: wordbreak before and after, ELPA Syncer, 2022/12/03
- [nongnu] elpa/bash-completion 8b02aafc67 046/313: separators, ELPA Syncer, 2022/12/03
- [nongnu] elpa/bash-completion 2390d5cdf3 061/313: more commends and documentation; still need a commentary section, ELPA Syncer, 2022/12/03
- [nongnu] elpa/bash-completion c0f7c20a6b 094/313: added license and missing test dependency, ELPA Syncer, 2022/12/03
- [nongnu] elpa/bash-completion a2d322fb79 054/313: Added customization group, ELPA Syncer, 2022/12/03
- [nongnu] elpa/bash-completion 983f5c28e9 106/313: Merge pull request #2 from frankpzh/patch-1, ELPA Syncer, 2022/12/03
- [nongnu] elpa/bash-completion 9f02a62609 049/313: re-enabled parse-line cursor at the beginning/in the middle tests, ELPA Syncer, 2022/12/03
- [nongnu] elpa/bash-completion 3ec615a4ef 077/313: added id, ELPA Syncer, 2022/12/03