(defun tramp--test-shell-command-to-string-asynchronously (command)
"Like `shell-command-to-string', but for asynchronous processes."
(with-temp-buffer
- (async-shell-command command (current-buffer))
- (with-timeout
- ((if (getenv "EMACS_EMBA_CI") 30 10) (tramp--test-timeout-handler))
- (while (accept-process-output
- (get-buffer-process (current-buffer)) nil nil t)))
+ (unwind-protect
+ (async-shell-command command (current-buffer))
+ (with-timeout
+ ((if (getenv "EMACS_EMBA_CI") 30 10) (tramp--test-timeout-handler))
+ (while (accept-process-output
+ (get-buffer-process (current-buffer)) nil nil t)))
+ (tramp--test-message
+ "# %s\n%s"
+ command (buffer-substring-no-properties (point-min) (point-max))))
(buffer-substring-no-properties (point-min) (point-max))))
(ert-deftest tramp-test32-shell-command ()
(ignore-errors (delete-file tmp-name)))
;; Test `shell-command-width' of `async-shell-command'.
-
;; `executable-find' has changed the number of parameters in
;; Emacs 27.1, so we use `apply' for older Emacsen.
(when (and (executable-find "tput")