1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-02 11:21:42 +00:00

Fix Bug#13662.

* automated/inotify-test.el (inotify-file-watch-simple): Skip test
case if inotify is not linked with Emacs.  Use `read-event' rather
than `sit-for' in order to process events.
This commit is contained in:
Michael Albinus 2014-01-17 12:50:15 +01:00
parent b59e2fba12
commit 160630163c
2 changed files with 34 additions and 29 deletions

View File

@ -1,3 +1,9 @@
2014-01-17 Michael Albinus <michael.albinus@gmx.de>
* automated/inotify-test.el (inotify-file-watch-simple): Skip test
case if inotify is not linked with Emacs. Use `read-event' rather
than `sit-for' in order to process events. (Bug#13662)
2014-01-13 Michael Albinus <michael.albinus@gmx.de>
* automated/ert-tests.el (ert-test-record-backtrace): Reenable

View File

@ -28,37 +28,36 @@
(declare-function inotify-add-watch "inotify.c" (file-name aspect callback))
(declare-function inotify-rm-watch "inotify.c" (watch-descriptor))
(when (featurep 'inotify)
;; (ert-deftest filewatch-file-watch-aspects-check ()
;; "Test whether `file-watch' properly checks the aspects."
;; (let ((temp-file (make-temp-file "filewatch-aspects")))
;; (should (stringp temp-file))
;; (should-error (file-watch temp-file 'wrong nil)
;; :type 'error)
;; (should-error (file-watch temp-file '(modify t) nil)
;; :type 'error)
;; (should-error (file-watch temp-file '(modify all-modify) nil)
;; :type 'error)
;; (should-error (file-watch temp-file '(access wrong modify) nil)
;; :type 'error)))
;; (ert-deftest filewatch-file-watch-aspects-check ()
;; "Test whether `file-watch' properly checks the aspects."
;; (let ((temp-file (make-temp-file "filewatch-aspects")))
;; (should (stringp temp-file))
;; (should-error (file-watch temp-file 'wrong nil)
;; :type 'error)
;; (should-error (file-watch temp-file '(modify t) nil)
;; :type 'error)
;; (should-error (file-watch temp-file '(modify all-modify) nil)
;; :type 'error)
;; (should-error (file-watch temp-file '(access wrong modify) nil)
;; :type 'error)))
(ert-deftest inotify-file-watch-simple ()
"Test if watching a normal file works."
(ert-deftest inotify-file-watch-simple ()
"Test if watching a normal file works."
(let ((temp-file (make-temp-file "inotify-simple"))
(events 0))
(let ((wd
(inotify-add-watch temp-file t (lambda (_ev)
(setq events (1+ events))))))
(unwind-protect
(progn
(with-temp-file temp-file
(insert "Foo\n"))
(sit-for 5) ;; Hacky. Wait for 5s until events are processed
(should (> events 0)))
(inotify-rm-watch wd)
(delete-file temp-file)))))
)
(skip-unless (featurep 'inotify))
(let ((temp-file (make-temp-file "inotify-simple"))
(events 0))
(let ((wd
(inotify-add-watch temp-file t (lambda (_ev)
(setq events (1+ events))))))
(unwind-protect
(progn
(with-temp-file temp-file
(insert "Foo\n"))
(read-event nil nil 5)
(should (> events 0)))
(inotify-rm-watch wd)
(delete-file temp-file)))))
(provide 'inotify-tests)