X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=tests%2Ftest-fddl.lisp;h=a206f80d7a0dd13cc231483ce456574b6c496cc4;hb=d4bb1303dea9ba6734b86abc34e904edb3e36f6f;hp=0ffe57e376db795686ba33e85fc1755a0ec03703;hpb=645d2ea7396466b8673e3421b55e45cd327f0195;p=clsql.git diff --git a/tests/test-fddl.lisp b/tests/test-fddl.lisp index 0ffe57e..a206f80 100644 --- a/tests/test-fddl.lisp +++ b/tests/test-fddl.lisp @@ -86,7 +86,7 @@ (clsql:list-attributes [employee] :owner *test-database-user*)) #'string<)) - "birthday" "ecompanyid" "email" "emplid" "first_name" "groupid" "height" + "bd_utime" "birthday" "ecompanyid" "email" "emplid" "first_name" "groupid" "height" "last_name" "managerid" "married") (deftest :fddl/attributes/2 @@ -96,7 +96,7 @@ (clsql:list-attribute-types [employee] :owner *test-database-user*)) #'string<)) - "birthday" "ecompanyid" "email" "emplid" "first_name" "groupid" "height" + "bd_utime" "birthday" "ecompanyid" "email" "emplid" "first_name" "groupid" "height" "last_name" "managerid" "married") ;; Attribute types are vendor specific so need to test a range @@ -118,6 +118,9 @@ (and (member (clsql:attribute-type [height] [employee]) '(:float :float8 :number)) t) t) +(deftest :fddl/attributes/7 + (and (member (clsql:attribute-type [bd_utime] [employee]) '(:bigint :int8 :char)) t) + t) ;; create a view, test for existence, drop it and test again @@ -273,10 +276,16 @@ (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)