X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/795e7a5b3202851a89a042578ee572962a723d65..deea36f0ece7b1b14afe2a833b6a0f66d59f4459:/test/automated/inotify-test.el diff --git a/test/automated/inotify-test.el b/test/automated/inotify-test.el index 175f262b28..187b59054c 100644 --- a/test/automated/inotify-test.el +++ b/test/automated/inotify-test.el @@ -1,6 +1,6 @@ ;;; inotify-tests.el --- Test suite for inotify. -*- lexical-binding: t -*- -;; Copyright (C) 2012-2013 Free Software Foundation, Inc. +;; Copyright (C) 2012-2015 Free Software Foundation, Inc. ;; Author: Rüdiger Sonderfeld ;; Keywords: internal @@ -25,36 +25,40 @@ (require 'ert) -(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 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))))) -) +(declare-function inotify-add-watch "inotify.c" (file-name aspect callback)) +(declare-function inotify-rm-watch "inotify.c" (watch-descriptor)) + +;; (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." + + (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) + ;;; inotify-tests.el ends here.