r9461: 24 May 2004 Kevin Rosenberg <kevin@rosenberg.net>
[clsql.git] / tests / test-init.lisp
index 6738c1dfa48910b01a0687f4d3a2c97749fcb9de..981046e51f0d59b48efdd13c98ef09c3abed54ad 100644 (file)
     (ignore-errors (create-database spec :database-type db-type)))
   
   (setf *test-database-type* db-type)
-  (when (>= (length spec) 3)
-    (setq *test-database-user* (third spec)))
+  (setf *test-database-user*
+    (cond
+     ((eq :oracle db-type) (second spec))
+     ((>= (length spec) 3) (third spec))))
   
   ;; Connect to the database
   (clsql:connect spec
          (machine-type)
          db-type
          (if (not (eq db-type *test-database-underlying-type*))
-             (format nil " with underlying type ~A
+             (format nil " with underlying type ~:@(~A~)
                      *test-database-underlying-type*)
              "")
          ))
       (values (nreverse test-forms) (nreverse skip-tests))))
 
 
-(defun rapid-load (type)
+(defun rapid-load (type &optional (position 0))
   "Rapid load for interactive testing."
   (when *default-database*
       (disconnect :database *default-database*))
-  (test-connect-to-database type (car (db-type-spec type (read-specs))))
-  (test-initialise-database))
+  (test-connect-to-database type (nth position (db-type-spec type (read-specs))))
+  (test-initialise-database)
+  *default-database*)
 
 (defun rl ()
   (rapid-load :postgresql))