r9657: Cleanup and document the FDDL.
[clsql.git] / tests / test-fddl.lisp
index b75f2cf2dbdc6ceb60ca2d091ed3dd8c65623c14..c5c305b3828d3d4aa1ac694df734e8949fb5339a 100644 (file)
   t)
 
 (deftest :fddl/attributes/7
-    (and (member (clsql:attribute-type [bd_utime] [employee]) '(:bigint :int8 :number)) t)
+    (and (member (clsql:attribute-type [bd_utime] [employee]) '(:bigint :int8 :char)) t)
   t)
 
 
       (apply #'values result))
   t t t)
 
-;; test list-table-indexes
+;; test list-indexes with keyword :ON 
 (deftest :fddl/index/3
     (progn
       (clsql:create-table [i3test] '(([a] (string 10))
        (sort 
        (mapcar 
         #'string-downcase
-        (clsql:list-table-indexes [i3test] :owner *test-database-user*))
+        (clsql:list-indexes :on [i3test] :owner *test-database-user*))
        #'string-lessp)
        (progn
         (clsql:drop-index [bar] :on [i3test])
            (max (expt 2 60))
            (rest rows (cdr rest)))
           ((= i (length rows)) t)
-        (let ((row (car rest))
-              (index (1+ i)))
-          (unless (and (eql (first row) index)
-                       (eql (second row) (truncate max index)))
+        (let ((index (1+ i))
+              (int (first (car rest)))
+              (bigint (second (car rest))))
+          (when (and (or (eq *test-database-type* :oracle)
+                         (and (eq *test-database-type* :odbc)
+                              (eq *test-database-underlying-type* :postgresql)))
+                     (stringp bigint))
+            (setf bigint (parse-integer bigint)))
+          (unless (and (eql int index)
+                       (eql bigint (truncate max index)))
             (return nil))))))
   555 t)