From: Kevin M. Rosenberg Date: Thu, 13 May 2004 18:01:13 +0000 (+0000) Subject: r9355: updates X-Git-Tag: v3.8.6~461 X-Git-Url: http://git.kpe.io/?p=clsql.git;a=commitdiff_plain;h=8ee8fd019f504602519a38b78db018b5c1ec1e25 r9355: updates --- diff --git a/ChangeLog b/ChangeLog index 6c1d013..d8580ef 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +13 May 2004 Kevin Rosenberg (kevin@rosenberg.net) + * tests/test-init.lisp: Add deferred-employee-address + class + * tests/test-oodml.lisp: Add deferred retrieval testgs + 12 May 2004 Kevin Rosenberg (kevin@rosenberg.net) * Version 2.10.17 * LATEST-TEST-RESULTS: Run on all platforms, add AMD64 diff --git a/tests/test-init.lisp b/tests/test-init.lisp index 9b2597e..d98cbf2 100644 --- a/tests/test-init.lisp +++ b/tests/test-init.lisp @@ -163,6 +163,17 @@ :retrieval :immediate))) (:base-table "ea_join")) +(def-view-class deferred-employee-address () + ((aemplid :type integer :initarg :emplid) + (aaddressid :type integer :initarg :addressid) + (verified :type boolean :initarg :verified) + (address :db-kind :join + :db-info (:join-class address + :home-key aaddressid + :foreign-key addressid + :retrieval :deferred))) + (:base-table "ea_join")) + (defun test-connect-to-database (db-type spec) (when (clsql-sys:db-backend-has-create/destroy-db? db-type) (ignore-errors (destroy-database spec :database-type db-type)) diff --git a/tests/test-oodml.lisp b/tests/test-oodml.lisp index 2e906b2..8d2281e 100644 --- a/tests/test-oodml.lisp +++ b/tests/test-oodml.lisp @@ -111,27 +111,47 @@ (select 'employee :flatp t :caching nil)) t) - ;; :retrieval :immediate should be boundp before accessed (deftest :oodm/retrieval/2 + (every #'(lambda (e) (not (slot-boundp e 'address))) + (select 'deferred-employee-address :flatp t :caching nil)) + t) + + ;; :retrieval :immediate should be boundp before accessed + (deftest :oodm/retrieval/3 (every #'(lambda (ea) (slot-boundp ea 'address)) (select 'employee-address :flatp t :caching nil)) t) - (deftest :oodm/retrieval/3 + (deftest :oodm/retrieval/4 (mapcar #'(lambda (ea) (typep (slot-value ea 'address) 'address)) (select 'employee-address :flatp t :caching nil)) (t t t t t)) - (deftest :oodm/retrieval/4 + (deftest :oodm/retrieval/5 + (mapcar #'(lambda (ea) (typep (slot-value ea 'address) 'address)) + (select 'deferred-employee-address :flatp t :caching nil)) + (t t t t t)) + + (deftest :oodm/retrieval/6 (every #'(lambda (ea) (slot-boundp (slot-value ea 'address) 'addressid)) (select 'employee-address :flatp t :caching nil)) t) - (deftest :oodm/retrieval/5 + (deftest :oodm/retrieval/7 + (every #'(lambda (ea) (slot-boundp (slot-value ea 'address) 'addressid)) + (select 'deferred-employee-address :flatp t :caching nil)) + t) + + (deftest :oodm/retrieval/8 (mapcar #'(lambda (ea) (slot-value (slot-value ea 'address) 'street-number)) (select 'employee-address :flatp t :order-by [aaddressid] :caching nil)) (10 10 nil nil nil)) + (deftest :oodm/retrieval/9 + (mapcar #'(lambda (ea) (slot-value (slot-value ea 'address) 'street-number)) + (select 'deferred-employee-address :flatp t :order-by [aaddressid] :caching nil)) + (10 10 nil nil nil)) + ;; tests update-records-from-instance (deftest :oodml/update-records/1 (values @@ -353,6 +373,14 @@ collect (slot-value e 'last-name)) ("Lenin" "Stalin" "Trotsky")) - )) + (deftest oodml/cache/1 + (progn + (setf (clsql-sys:record-caches *default-database*) nil) + (let ((employees (select 'employee))) + (every #'(lambda (a b) (eq a b)) + employees (select 'employee)))) + t) + + )) #.(clsql:restore-sql-reader-syntax-state)