Adding a test that is just micro-seconds for sqlserver, marking usec ones as skip.
[clsql.git] / tests / test-init.lisp
index da40ad781ec5c6e0f33de48eda73a7daa3340760..8ce12ed654669429407a30489f7e992304e77c04 100644 (file)
 
            (format *report-stream* "~&Tests skipped:")
            (if skip-tests
-               (dolist (skipped skip-tests)
-                 (format *report-stream*
-                         "~&   ~30A ~A~%" (car skipped) (cdr skipped)))
+               (let ((max-test-name 20))
+                 (dolist (skipped skip-tests)
+                   (let ((len (length (symbol-name (car skipped)))))
+                     (when (> len max-test-name)
+                       (setq max-test-name len))))
+                 (let ((fmt (format nil "~~&  ~~~DA ~~A~~%" max-test-name)))
+                   (dolist (skipped skip-tests)
+                     (format *report-stream* fmt (car skipped) (cdr skipped)))))
                (format *report-stream* " None~%")))
     (disconnect)))
 
           (push (cons test "Postgres specific test.")
                 skip-tests))
          ((and (member *test-database-underlying-type* '(:mysql))
+               (clsql-sys:in test :time/cross-platform/msec
+                            :time/cross-platform/usec/no-tz :time/cross-platform/usec/tz))
+          (push (cons test "MySQL doesn't support fractional seconds on timestamp columns (http://forge.mysql.com/worklog/task.php?id=946).")
+                skip-tests))
+         ((and (member *test-database-underlying-type* '(:mssql))
                (clsql-sys:in test :time/cross-platform/usec/no-tz :time/cross-platform/usec/tz))
-          (push (cons test "MySQL does not support fractional seconds on timestamp columns (http://forge.mysql.com/worklog/task.php?id=946).")
+          (push (cons test "MSSQL doesn't support micro-seconds on datetime columns.")
                 skip-tests))
-
           (t
            (push test-form test-forms)))))
       (values (nreverse test-forms) (nreverse skip-tests))))