[elephant-cvs] CVS elephant/tests
ieslick
ieslick at common-lisp.net
Thu Feb 2 21:48:39 UTC 2006
Update of /project/elephant/cvsroot/elephant/tests
In directory common-lisp:/tmp/cvs-serv6576/tests
Modified Files:
Tag: ELEPHANT-0-4-1-rc1-IAN
elephant-tests.lisp testindexing.lisp
Log Message:
There may be a bug or two left, but the major locking problems have been
resolved. Interactions due to reconnecting to databases can be problematic
(i.e. indexing a new object when a cursor is walking the indices for that
object leads to deadlock in the bdb code where the cursor has a read lock
on an index that the persistent indexing wanted to write)
More tests needed, but the system appears largely stable now.
--- /project/elephant/cvsroot/elephant/tests/elephant-tests.lisp 2006/01/30 04:55:00 1.7.2.3
+++ /project/elephant/cvsroot/elephant/tests/elephant-tests.lisp 2006/02/02 21:48:39 1.7.2.4
@@ -127,10 +127,11 @@
(do-all-tests-spec *testsqlite3-path*)
))
-(defun do-all-tests-spec(spec)
+(defun do-all-tests-spec (spec)
(when spec
(with-open-store (spec)
(let ((*auto-commit* nil))
+ (declare (special *auto-commit*))
(do-tests)))))
(defun do-test-spec (testname &optional (spec *testdb-path*))
@@ -141,14 +142,21 @@
(do-test testname)))))
(defun do-indexing-tests ()
- (setf *old-store* *store-controller*)
- (open-store *testdb-path*)
- (print (do-test 'indexing-basic))
- (print (do-test 'indexing-inherit))
- (print (do-test 'indexing-range))
- (print (do-test 'indexing-reconnect-db))
- (close-store)
- (setf *store-controller* *old-store*))
+ (declare (special *old-store*))
+ (setq *old-store* *store-controller*)
+ (unwind-protect
+ (progn
+ (open-store *testdb-path*)
+ (print (do-test 'indexing-basic))
+ (print (do-test 'indexing-inherit))
+ (print (do-test 'indexing-range))
+ (print (do-test 'indexing-reconnect-db))
+ (print (do-test 'indexing-change-class))
+ (print (do-test 'indexing-redef-class))
+ (print (do-test 'indexing-explicit-changes))
+ (print (do-test 'indexing-timing))
+ (close-store))
+ (setq *store-controller* *old-store*)))
(defun do-crazy-pg-tests()
(open-store *testpg-path*)
More information about the Elephant-cvs
mailing list