summaryrefslogtreecommitdiff
path: root/test/lisp/net
diff options
context:
space:
mode:
authorMichael Albinus <michael.albinus@gmx.de>2022-02-16 20:22:45 +0100
committerMichael Albinus <michael.albinus@gmx.de>2022-02-16 20:22:45 +0100
commit8737d79be8f82bb12ca12dc1a7de37a4d2875f39 (patch)
tree1af6ff6e11b2d9185decf121b79a2efcc0c3bdfa /test/lisp/net
parentb299c042012c769280ede736907777e80b624ff0 (diff)
downloademacs-8737d79be8f82bb12ca12dc1a7de37a4d2875f39.tar.gz
emacs-8737d79be8f82bb12ca12dc1a7de37a4d2875f39.tar.bz2
emacs-8737d79be8f82bb12ca12dc1a7de37a4d2875f39.zip
Fix problem with file-modification-time in tramp-sshfs.el
* lisp/net/tramp-crypt.el (tramp-crypt-file-name-handler-alist): * lisp/net/tramp-rclone.el (tramp-rclone-file-name-handler-alist): * lisp/net/tramp-sudoedit.el (tramp-sudoedit-file-name-handler-alist): * lisp/net/tramp-sshfs.el (tramp-sshfs-file-name-handler-alist): Use `tramp-handle-file-notify-add-watch', `tramp-handle-file-notify-rm-watch' and `tramp-handle-file-notify-valid-p'. (tramp-sshfs-handle-write-region): Set file modification time. (Bug#54016) * test/lisp/net/tramp-tests.el (tramp--test-asynchronous-processes-p): Filter out tramp-adb on multi-byte `default-directory'. (tramp--test-hpux-p, tramp--test-macos-p): Protect against errors. (tramp--test-check-files): Discriminate also tramp-sshfs.el.
Diffstat (limited to 'test/lisp/net')
-rw-r--r--test/lisp/net/tramp-tests.el20
1 files changed, 13 insertions, 7 deletions
diff --git a/test/lisp/net/tramp-tests.el b/test/lisp/net/tramp-tests.el
index baddcd2d7ac..2ce7881543f 100644
--- a/test/lisp/net/tramp-tests.el
+++ b/test/lisp/net/tramp-tests.el
@@ -6198,10 +6198,14 @@ This requires restrictions of file name syntax."
"Whether asynchronous processes tests are run.
This is used in tests which we dont't want to tag
`:tramp-asynchronous-processes' completely."
- (ert-select-tests
- (ert--stats-selector ert--current-run-stats)
- (list (make-ert-test :name (ert-test-name (ert-running-test))
- :body nil :tags '(:tramp-asynchronous-processes)))))
+ (and
+ (ert-select-tests
+ (ert--stats-selector ert--current-run-stats)
+ (list (make-ert-test :name (ert-test-name (ert-running-test))
+ :body nil :tags '(:tramp-asynchronous-processes))))
+ ;; tramp-adb.el cannot apply multi-byte commands.
+ (not (and (tramp--test-adb-p)
+ (string-match-p "[[:multibyte:]]" default-directory)))))
(defun tramp--test-crypt-p ()
"Check, whether the remote directory is crypted."
@@ -6250,7 +6254,7 @@ If optional METHOD is given, it is checked first."
Several special characters do not work properly there."
;; We must refill the cache. `file-truename' does it.
(file-truename tramp-test-temporary-file-directory)
- (tramp-check-remote-uname tramp-test-vec "^HP-UX"))
+ (ignore-errors (tramp-check-remote-uname tramp-test-vec "^HP-UX")))
(defun tramp--test-ksh-p ()
"Check, whether the remote shell is ksh.
@@ -6265,7 +6269,7 @@ a $'' syntax."
"Check, whether the remote host runs macOS."
;; We must refill the cache. `file-truename' does it.
(file-truename tramp-test-temporary-file-directory)
- (tramp-check-remote-uname tramp-test-vec "Darwin"))
+ (ignore-errors (tramp-check-remote-uname tramp-test-vec "Darwin")))
(defun tramp--test-mock-p ()
"Check, whether the mock method is used.
@@ -6527,8 +6531,10 @@ This requires restrictions of file name syntax."
;; Prior Emacs 27, `shell-file-name' was
;; hard coded as "/bin/sh" for remote
;; processes in Emacs. That doesn't work
- ;; for tramp-adb.el.
+ ;; for tramp-adb.el. tramp-sshfs.el times
+ ;; out for older Emacsen, reason unknown.
(or (not (tramp--test-adb-p))
+ (not (tramp--test-sshfs-p))
(tramp--test-emacs27-p)))
(let ((default-directory file1))
(dolist (this-shell-command