X-Git-Url: http://git.kpe.io/?p=clsql.git;a=blobdiff_plain;f=tests%2Ftest-fddl.lisp;fp=tests%2Ftest-fddl.lisp;h=55b2977e3428c750ac5196f5a4292ddae3d0fbfb;hp=c5c305b3828d3d4aa1ac694df734e8949fb5339a;hb=ebfa7f4dffe513c639b84b28135c5bbc92d43d61;hpb=467d30bc300d46b200e938a30e948afaca5b9b72 diff --git a/tests/test-fddl.lisp b/tests/test-fddl.lisp index c5c305b..55b2977 100644 --- a/tests/test-fddl.lisp +++ b/tests/test-fddl.lisp @@ -79,6 +79,43 @@ (clsql:drop-table "MyMixedCase")) ((5) (6))) +(deftest :fddl/table/6 + (values + (clsql:table-exists-p [foo]) + (progn + (let ((*backend-warning-behavior* + (if (member *test-database-type* + '(:postgresql :postgresql-socket)) + :ignore + :warn))) + (clsql:create-table [foo] + '(([bar] integer :not-null :unique :primary-key) + ([baz] string :not-null :unique)))) + (clsql:table-exists-p [foo])) + (progn + (clsql:drop-table [foo]) + (clsql:table-exists-p [foo]))) + nil t nil) + +(deftest :fddl/table/7 + (values + (clsql:table-exists-p [foo]) + (progn + (let ((*backend-warning-behavior* + (if (member *test-database-type* + '(:postgresql :postgresql-socket)) + :ignore + :warn))) + (clsql:create-table [foo] '(([bar] integer :not-null) + ([baz] string :not-null)) + :constraints '("UNIQUE (bar,baz)" + "PRIMARY KEY (bar)"))) + (clsql:table-exists-p [foo])) + (progn + (clsql:drop-table [foo]) + (clsql:table-exists-p [foo]))) + nil t nil) + (deftest :fddl/attributes/1 (apply #'values (sort @@ -289,7 +326,18 @@ (return nil)))))) 555 t) - +(deftest :fddl/owner/1 + (and + ;; user tables are an improper subset of all tables + (= (length (intersection (clsql:list-tables :owner nil) + (clsql:list-tables :owner :all) + :test #'string=)) + (length (clsql:list-tables :owner nil))) + ;; user tables are a proper subset of all tables + (> (length (clsql:list-tables :owner :all)) + (length (clsql:list-tables :owner nil)))) + t) + )) #.(clsql:restore-sql-reader-syntax-state)