X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=tests%2Ftest-fddl.lisp;h=bafa1c55c79150e17a3214185c7363c4da4c3c9c;hb=3e67ee0887558908069b0d1f2a72abfae3725799;hp=2767f130a98a808e2a93aa05d8f9922cb7d9570b;hpb=5a6f424f3c8920f8f11bbf1e3aed6b4c2c7e6af8;p=clsql.git diff --git a/tests/test-fddl.lisp b/tests/test-fddl.lisp index 2767f13..bafa1c5 100644 --- a/tests/test-fddl.lisp +++ b/tests/test-fddl.lisp @@ -3,28 +3,32 @@ ;;;; File: test-fddl.lisp ;;;; Author: Marcus Pearce ;;;; Created: 30/03/2004 -;;;; Updated: $Id: $ -;;;; ====================================================================== -;;;; -;;;; Description ========================================================== -;;;; ====================================================================== +;;;; Updated: $Id$ ;;;; ;;;; Tests for the CLSQL Functional Data Definition Language ;;;; (FDDL). -;;;; +;;;; +;;;; This file is part of CLSQL. +;;;; +;;;; CLSQL users are granted the rights to distribute and use this software +;;;; as governed by the terms of the Lisp Lesser GNU Public License +;;;; (http://opensource.franz.com/preamble.html), also known as the LLGPL. ;;;; ====================================================================== (in-package #:clsql-tests) #.(clsql:locally-enable-sql-reader-syntax) +(setq *rt-fddl* + '( + ;; list current tables (deftest :fddl/table/1 (apply #'values (sort (mapcar #'string-downcase (clsql:list-tables :owner *test-database-user*)) #'string>)) - "clsql_object_v" "employee" "company") + "employee" "company") ;; create a table, test for its existence, drop it and test again (deftest :fddl/table/2 @@ -127,25 +131,23 @@ ;; not in sqlite (deftest :fddl/view/4 - (if (eql *test-database-type* :sqlite) - (values nil '(("Josef" "Stalin" "stalin@soviet.org"))) - (progn (clsql:create-view [lenins-group] - :column-list '([forename] [surname] [email]) - :as [select [first-name] [last-name] [email] - :from [employee] - :where [= [managerid] 1]]) - (let ((result - (list - ;; Shouldn't exist + (progn (clsql:create-view [lenins-group] + :column-list '([forename] [surname] [email]) + :as [select [first-name] [last-name] [email] + :from [employee] + :where [= [managerid] 1]]) + (let ((result + (list + ;; Shouldn't exist (clsql:select [forename] [surname] [email] - :from [lenins-group] - :where [= [surname] "Lenin"]) - ;; Should exist + :from [lenins-group] + :where [= [surname] "Lenin"]) + ;; Should exist (car (clsql:select [forename] [surname] [email] - :from [lenins-group] - :where [= [surname] "Stalin"]))))) - (clsql:drop-view [lenins-group] :if-does-not-exist :ignore) - (apply #'values result)))) + :from [lenins-group] + :where [= [surname] "Stalin"]))))) + (clsql:drop-view [lenins-group] :if-does-not-exist :ignore) + (apply #'values result))) nil ("Josef" "Stalin" "stalin@soviet.org")) ;; create an index, test for existence, drop it and test again @@ -161,7 +163,7 @@ :if-does-not-exist :ignore)) (t (clsql:drop-index [bar]:if-does-not-exist :ignore))) - (clsql:view-exists-p [bar] :owner *test-database-user*)))) + (clsql:index-exists-p [bar] :owner *test-database-user*)))) t nil) ;; create indexes with names as strings, symbols and in square brackets @@ -208,4 +210,6 @@ (clsql:drop-sequence [foo] :if-does-not-exist :ignore))) 6) +)) + #.(clsql:restore-sql-reader-syntax-state)