r8935: example dir
[clsql.git] / classic-tests / tests.lisp
index 94db68cb643e7d604fac803f8d2e1e397ad6e79f..d94ed475a314184c56cf26988806c13097598393 100644 (file)
@@ -81,6 +81,8 @@
        (warn "CLSQL test config file ~S not found" path)
        nil)))
 
+(defgeneric test-table (spec type))
+
 (defmethod test-table (spec type)
   (when spec
     (let ((db (clsql:connect spec :database-type type :if-exists :new)))
             )
        (disconnect :database db)))))
 
-(defmethod mysql-low-level ((test conn-specs))
+(defun mysql-low-level (specs)
   #-clisp
-  (let ((spec (mysql-spec test)))
+  (let ((spec (mysql-spec specs)))
     (when spec
       (let ((db (clsql-mysql::database-connect spec :mysql)))
        (clsql-mysql::database-execute-command "DROP TABLE IF EXISTS test_clsql" db)
        (let ((spec (db-type-spec db-type specs)))
          (when spec
            (db-type-ensure-system db-type)
+           (ignore-errors (destroy-database spec db-type))
+           (ignore-errors (create-database spec db-type))
            (test-table spec db-type))))))
   t)