[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
scratch/sqlite e646003: Add busy-waiting files test
From: |
Lars Ingebrigtsen |
Subject: |
scratch/sqlite e646003: Add busy-waiting files test |
Date: |
Mon, 13 Dec 2021 21:15:53 -0500 (EST) |
branch: scratch/sqlite
commit e6460032e8e2ea7811155b54e995d3ce59759cae
Author: Lars Ingebrigtsen <larsi@gnus.org>
Commit: Lars Ingebrigtsen <larsi@gnus.org>
Add busy-waiting files test
---
test/lisp/emacs-lisp/multisession-tests.el | 38 +++++++++++++++++++++++++++++-
1 file changed, 37 insertions(+), 1 deletion(-)
diff --git a/test/lisp/emacs-lisp/multisession-tests.el
b/test/lisp/emacs-lisp/multisession-tests.el
index 94db552..7d636a2 100644
--- a/test/lisp/emacs-lisp/multisession-tests.el
+++ b/test/lisp/emacs-lisp/multisession-tests.el
@@ -81,7 +81,7 @@
"--eval" (prin1-to-string
`(progn
(require 'multisession)
- (let ((multisession-database-file ,dir)
+ (let ((multisession-directory ,dir)
(user-init-file "/tmp/bar.el"))
(define-multisession-variable bar 0
"" :synchronized t)
@@ -124,4 +124,40 @@
(cl-incf (multisession-value sfoo))))))
(should (= (multisession-value sfoo) 2)))))
+(ert-deftest multi-test-files-busy ()
+ (skip-unless (and t (sqlite-available-p)))
+ (ert-with-temp-file dir
+ :directory t
+ (let ((user-init-file "/tmp/foo.el")
+ (multisession-storage 'files)
+ (multisession-directory dir)
+ proc)
+ (define-multisession-variable sbar 0
+ ""
+ :synchronized t)
+ (should (= (multisession-value sbar) 0))
+ (cl-incf (multisession-value sbar))
+ (should (= (multisession-value sbar) 1))
+ (setq proc
+ (start-process
+ "other-emacs"
+ nil
+ (concat invocation-directory invocation-name)
+ "-Q" "-batch"
+ "--eval" (prin1-to-string
+ `(progn
+ (require 'multisession)
+ (let ((multisession-directory ,dir)
+ (multisession-storage 'files)
+ (user-init-file "/tmp/sbar.el"))
+ (define-multisession-variable sbar 0
+ "" :synchronized t)
+ (dotimes (i 1000)
+ (cl-incf (multisession-value sbar))))))))
+ (while (process-live-p proc)
+ (cl-incf (multisession-value sbar))
+ (sleep-for 0.1))
+ (message "sbar ends up as %s" (multisession-value sbar))
+ (should (< (multisession-value sbar) 2000)))))
+
;;; multisession-tests.el ends here
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- scratch/sqlite e646003: Add busy-waiting files test,
Lars Ingebrigtsen <=