aboutsummaryrefslogtreecommitdiffstats
path: root/test/src
diff options
context:
space:
mode:
Diffstat (limited to 'test/src')
-rw-r--r--test/src/buffer-tests.el38
-rw-r--r--test/src/filelock-tests.el31
-rw-r--r--test/src/inotify-tests.el31
-rw-r--r--test/src/undo-tests.el20
4 files changed, 58 insertions, 62 deletions
diff --git a/test/src/buffer-tests.el b/test/src/buffer-tests.el
index 059926ff46b..ac213d1bade 100644
--- a/test/src/buffer-tests.el
+++ b/test/src/buffer-tests.el
@@ -19,6 +19,8 @@
19 19
20;;; Code: 20;;; Code:
21 21
22(require 'ert)
23(require 'ert-x)
22(require 'cl-lib) 24(require 'cl-lib)
23 25
24(ert-deftest overlay-modification-hooks-message-other-buf () 26(ert-deftest overlay-modification-hooks-message-other-buf ()
@@ -1421,25 +1423,23 @@ with parameters from the *Messages* buffer modification."
1421 (should (= (length (overlays-in (point-min) (point-max))) 0)))) 1423 (should (= (length (overlays-in (point-min) (point-max))) 0))))
1422 1424
1423(ert-deftest test-kill-buffer-auto-save-default () 1425(ert-deftest test-kill-buffer-auto-save-default ()
1424 (let ((file (make-temp-file "ert")) 1426 (ert-with-temp-file file
1425 auto-save) 1427 (let (auto-save)
1426 (should (file-exists-p file)) 1428 ;; Always answer yes.
1427 ;; Always answer yes. 1429 (cl-letf (((symbol-function #'yes-or-no-p) (lambda (_) t)))
1428 (cl-letf (((symbol-function #'yes-or-no-p) (lambda (_) t))) 1430 (unwind-protect
1429 (unwind-protect 1431 (progn
1430 (progn 1432 (find-file file)
1431 (find-file file) 1433 (auto-save-mode t)
1432 (auto-save-mode t) 1434 (insert "foo\n")
1433 (insert "foo\n") 1435 (should buffer-auto-save-file-name)
1434 (should buffer-auto-save-file-name) 1436 (setq auto-save buffer-auto-save-file-name)
1435 (setq auto-save buffer-auto-save-file-name) 1437 (do-auto-save)
1436 (do-auto-save) 1438 (should (file-exists-p auto-save))
1437 (should (file-exists-p auto-save)) 1439 (kill-buffer (current-buffer))
1438 (kill-buffer (current-buffer)) 1440 (should (file-exists-p auto-save)))
1439 (should (file-exists-p auto-save))) 1441 (when auto-save
1440 (ignore-errors (delete-file file)) 1442 (ignore-errors (delete-file auto-save))))))))
1441 (when auto-save
1442 (ignore-errors (delete-file auto-save)))))))
1443 1443
1444(ert-deftest test-kill-buffer-auto-save-delete () 1444(ert-deftest test-kill-buffer-auto-save-delete ()
1445 (let ((file (make-temp-file "ert")) 1445 (let ((file (make-temp-file "ert"))
diff --git a/test/src/filelock-tests.el b/test/src/filelock-tests.el
index a96d6d67289..ba001679639 100644
--- a/test/src/filelock-tests.el
+++ b/test/src/filelock-tests.el
@@ -28,6 +28,7 @@
28 28
29(require 'cl-macs) 29(require 'cl-macs)
30(require 'ert) 30(require 'ert)
31(require 'ert-x)
31(require 'seq) 32(require 'seq)
32 33
33(defun filelock-tests--fixture (test-function) 34(defun filelock-tests--fixture (test-function)
@@ -36,22 +37,20 @@ Create a test directory and a buffer whose `buffer-file-name' and
36`buffer-file-truename' are a file within it, then call 37`buffer-file-truename' are a file within it, then call
37TEST-FUNCTION. Finally, delete the buffer and the test 38TEST-FUNCTION. Finally, delete the buffer and the test
38directory." 39directory."
39 (let* ((temp-dir (make-temp-file "filelock-tests" t)) 40 (ert-with-temp-directory temp-dir
40 (name (concat (file-name-as-directory temp-dir) 41 (let ((name (concat (file-name-as-directory temp-dir)
41 "userfile")) 42 "userfile"))
42 (create-lockfiles t)) 43 (create-lockfiles t))
43 (unwind-protect 44 (with-temp-buffer
44 (with-temp-buffer 45 (setq buffer-file-name name
45 (setq buffer-file-name name 46 buffer-file-truename name)
46 buffer-file-truename name) 47 (unwind-protect
47 (unwind-protect 48 (save-current-buffer
48 (save-current-buffer 49 (funcall test-function))
49 (funcall test-function)) 50 ;; Set `buffer-file-truename' nil to prevent unlocking,
50 ;; Set `buffer-file-truename' nil to prevent unlocking, 51 ;; which might prompt the user and/or signal errors.
51 ;; which might prompt the user and/or signal errors. 52 (setq buffer-file-name nil
52 (setq buffer-file-name nil 53 buffer-file-truename nil))))))
53 buffer-file-truename nil)))
54 (delete-directory temp-dir t nil))))
55 54
56(defun filelock-tests--make-lock-name (file-name) 55(defun filelock-tests--make-lock-name (file-name)
57 "Return the lock file name for FILE-NAME. 56 "Return the lock file name for FILE-NAME.
diff --git a/test/src/inotify-tests.el b/test/src/inotify-tests.el
index 8aab7eeb30a..c341af5c393 100644
--- a/test/src/inotify-tests.el
+++ b/test/src/inotify-tests.el
@@ -24,6 +24,7 @@
24;;; Code: 24;;; Code:
25 25
26(require 'ert) 26(require 'ert)
27(require 'ert-x)
27 28
28(declare-function inotify-add-watch "inotify.c" (file-name aspect callback)) 29(declare-function inotify-add-watch "inotify.c" (file-name aspect callback))
29(declare-function inotify-rm-watch "inotify.c" (watch-descriptor)) 30(declare-function inotify-rm-watch "inotify.c" (watch-descriptor))
@@ -50,23 +51,21 @@
50 51
51(ert-deftest inotify-file-watch-simple () 52(ert-deftest inotify-file-watch-simple ()
52 "Test if watching a normal file works." 53 "Test if watching a normal file works."
53
54 (skip-unless (featurep 'inotify)) 54 (skip-unless (featurep 'inotify))
55 (let ((temp-file (make-temp-file "inotify-simple")) 55 (ert-with-temp-file temp-file
56 (events 0)) 56 (let ((events 0))
57 (let ((wd 57 (let ((wd
58 (inotify-add-watch temp-file t (lambda (_ev) 58 (inotify-add-watch temp-file t (lambda (_ev)
59 (setq events (1+ events)))))) 59 (setq events (1+ events))))))
60 (unwind-protect 60 (unwind-protect
61 (progn 61 (progn
62 (with-temp-file temp-file 62 (with-temp-file temp-file
63 (insert "Foo\n")) 63 (insert "Foo\n"))
64 (read-event nil nil 5) 64 (read-event nil nil 5)
65 (should (> events 0))) 65 (should (> events 0)))
66 (should (inotify-valid-p wd)) 66 (should (inotify-valid-p wd))
67 (inotify-rm-watch wd) 67 (inotify-rm-watch wd)
68 (should-not (inotify-valid-p wd)) 68 (should-not (inotify-valid-p wd)))))))
69 (delete-file temp-file)))))
70 69
71(provide 'inotify-tests) 70(provide 'inotify-tests)
72 71
diff --git a/test/src/undo-tests.el b/test/src/undo-tests.el
index a658bccf6dc..88fcfad14cc 100644
--- a/test/src/undo-tests.el
+++ b/test/src/undo-tests.el
@@ -46,6 +46,7 @@
46;;; Code: 46;;; Code:
47 47
48(require 'ert) 48(require 'ert)
49(require 'ert-x)
49(require 'facemenu) 50(require 'facemenu)
50 51
51(ert-deftest undo-test0 () 52(ert-deftest undo-test0 ()
@@ -218,17 +219,14 @@
218 219
219(ert-deftest undo-test-file-modified () 220(ert-deftest undo-test-file-modified ()
220 "Test undoing marks buffer visiting file unmodified." 221 "Test undoing marks buffer visiting file unmodified."
221 (let ((tempfile (make-temp-file "undo-test"))) 222 (ert-with-temp-file tempfile
222 (unwind-protect 223 (with-current-buffer (find-file-noselect tempfile)
223 (progn 224 (insert "1")
224 (with-current-buffer (find-file-noselect tempfile) 225 (undo-boundary)
225 (insert "1") 226 (set-buffer-modified-p nil)
226 (undo-boundary) 227 (insert "2")
227 (set-buffer-modified-p nil) 228 (undo)
228 (insert "2") 229 (should-not (buffer-modified-p)))))
229 (undo)
230 (should-not (buffer-modified-p))))
231 (delete-file tempfile))))
232 230
233(ert-deftest undo-test-region-not-most-recent () 231(ert-deftest undo-test-region-not-most-recent ()
234 "Test undo in region of an edit not the most recent." 232 "Test undo in region of an edit not the most recent."