Added tests for symbols valued slots, and better printer/reader bindings
[clsql.git] / tests / ds-employees.lisp
index 6c464d13bd1588d53c9f8695c534da644e4f4041..26110534d1d8c9b47b866f728f8be52b37ea29e7 100644 (file)
@@ -1,6 +1,6 @@
 (in-package #:clsql-tests)
 
 (in-package #:clsql-tests)
 
-#.(clsql:locally-enable-sql-reader-syntax)
+(clsql-sys:file-enable-sql-reader-syntax)
 (defparameter company1 nil)
 (defparameter employee1 nil)
 (defparameter employee2 nil)
 (defparameter company1 nil)
 (defparameter employee1 nil)
 (defparameter employee2 nil)
 (defparameter employee10 nil)
 (defparameter address1 nil)
 (defparameter address2 nil)
 (defparameter employee10 nil)
 (defparameter address1 nil)
 (defparameter address2 nil)
+(defparameter address3 nil)
 (defparameter employee-address1 nil)
 (defparameter employee-address2 nil)
 (defparameter employee-address3 nil)
 (defparameter employee-address4 nil)
 (defparameter employee-address5 nil)
 (defparameter employee-address1 nil)
 (defparameter employee-address2 nil)
 (defparameter employee-address3 nil)
 (defparameter employee-address4 nil)
 (defparameter employee-address5 nil)
+(defparameter employee-address6 nil)
 
 (defclass thing ()
   ((extraterrestrial :initform nil :initarg :extraterrestrial)))
 
 (defclass thing ()
   ((extraterrestrial :initform nil :initarg :extraterrestrial)))
     :db-constraints :not-null
     :type integer
     :initarg :groupid)
     :db-constraints :not-null
     :type integer
     :initarg :groupid)
+   (title
+    :accessor title
+    :type symbol
+    :initarg :title)
    (first-name
     :accessor first-name
     :type (varchar 30)
    (first-name
     :accessor first-name
     :type (varchar 30)
 
 (defun initialize-ds-employees ()
   ;;  (start-sql-recording :type :both)
 
 (defun initialize-ds-employees ()
   ;;  (start-sql-recording :type :both)
-  (let ((*backend-warning-behavior*
-         (if (member *test-database-type* '(:postgresql :postgresql-socket))
-             :ignore
-            :warn)))
-    (mapc #'clsql:create-view-from-class
-         '(employee company address employee-address)))
-    
+  (mapc #'clsql:create-view-from-class
+        '(employee company address employee-address))
 
   (setq *test-start-utime* (get-universal-time))
   (let* ((*db-auto-sync* t)
 
   (setq *test-start-utime* (get-universal-time))
   (let* ((*db-auto-sync* t)
                                    :emplid 1
                                    :groupid 1
                                    :married t
                                    :emplid 1
                                    :groupid 1
                                    :married t
+                                   :title 'supplicant
                                    :height (1+ (random 1.00))
                                    :bd-utime *test-start-utime*
                                    :birthday now-time
                                    :height (1+ (random 1.00))
                                    :bd-utime *test-start-utime*
                                    :birthday now-time
           employee2 (make-instance 'employee
                                    :emplid 2
                                    :groupid 1
           employee2 (make-instance 'employee
                                    :emplid 2
                                    :groupid 1
+                                   :title :adherent
                                    :height (1+ (random 1.00))
                                    :married t
                                    :bd-utime *test-start-utime*
                                    :height (1+ (random 1.00))
                                    :married t
                                    :bd-utime *test-start-utime*
           employee3 (make-instance 'employee
                                    :emplid 3
                                    :groupid 1
           employee3 (make-instance 'employee
                                    :emplid 3
                                    :groupid 1
+                                   :title 'cl-user::novice
                                    :height (1+ (random 1.00))
                                    :married t
                                    :bd-utime *test-start-utime*
                                    :height (1+ (random 1.00))
                                    :married t
                                    :bd-utime *test-start-utime*
                                   :postal-code 123)
           address2 (make-instance 'address
                                   :addressid 2)
                                   :postal-code 123)
           address2 (make-instance 'address
                                   :addressid 2)
+          address3 (make-instance 'address
+                                  :addressid 3)
           employee-address1 (make-instance 'employee-address
                                            :emplid 1
                                            :addressid 1
           employee-address1 (make-instance 'employee-address
                                            :emplid 1
                                            :addressid 1
                                            :verified nil)
           employee-address5 (make-instance 'employee-address
                                            :emplid 3
                                            :verified nil)
           employee-address5 (make-instance 'employee-address
                                            :emplid 3
-                                           :addressid 2)))
+                                           :addressid 2)
+          employee-address6 (make-instance 'employee-address
+                                           :emplid 4
+                                           :addressid 3)))
 
   ;; sleep to ensure birthdays are no longer at current time
   ;(sleep 1) ;want to find the test that depends on it, put the sleep there.
 
   ;; sleep to ensure birthdays are no longer at current time
   ;(sleep 1) ;want to find the test that depends on it, put the sleep there.
               (ignore-errors
                 (clsql-sys:execute-command "DROP TABLE ea_join")))))
 
               (ignore-errors
                 (clsql-sys:execute-command "DROP TABLE ea_join")))))
 
-#.(clsql:restore-sql-reader-syntax-state)
-