made the datetest table have a key column so that update-records-from-* works again
authorRuss Tyndall <russ@acceleration.net>
Mon, 19 Nov 2012 21:55:24 +0000 (16:55 -0500)
committerNathan Bird <nathan@acceleration.net>
Wed, 5 Dec 2012 22:00:41 +0000 (17:00 -0500)
tests/test-time.lisp

index 158ac9c..e5b4d64 100644 (file)
@@ -8,7 +8,14 @@
 (clsql-sys:file-enable-sql-reader-syntax)
 
 (def-view-class datetest ()
-  ((testtimetz :column "testtimetz"
+  ((id :column "id"
+                :type integer
+                :db-kind :key
+                :db-constraints (:not-null :unique)
+               :accessor id :initarg :id
+                :initform nil
+               :db-type "int4")
+   (testtimetz :column "testtimetz"
                 :type clsql-sys:wall-time
                 :db-kind :base
                 :db-constraints nil
   (with-dataset *ds-datetest*
     (let ((time (parse-timestring "2008-09-09T14:37:29.000213-04:00")))
       (clsql-sys:insert-records :into [datetest]
-                               :attributes '([testtimetz] [testtime])
-                               :values (list time time))
+                               :attributes '([testtimetz] [testtime] [id])
+                               :values (list time time 1))
       (destructuring-bind (testtimetz testtime)
          (first (clsql:select [testtimetz] [testtime]
                               :from [datetest]
   (with-dataset *ds-datetest*
     (let ((time (parse-timestring "2008-09-09T14:37:29-04:00")))
       (clsql-sys:update-records-from-instance
-       (make-instance 'datetest :testtimetz time :testtime time))
+       (make-instance 'datetest :testtimetz time :testtime time :id 1))
       (let ((o (first (clsql:select
                          'datetest
                        :limit 1 :flatp t
     (with-dataset *ds-datetest*
       (let ((time (parse-timestring "2008-09-09T14:37:29.000278-04:00")))
        (clsql-sys:update-records-from-instance
-        (make-instance 'datetest :testtimetz time :testtime time))
+        (make-instance 'datetest :testtimetz time :testtime time :id 1))
        (let ((o (first (clsql:select
                         'datetest
                         :limit 1 :flatp t