X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=tests%2Ftest-init.lisp;h=28ae58709f3d37628accf4ecd7040ec5f5ed8e88;hb=ec9b352b8205e4204a06797f98970b03cf532ab2;hp=c13f545a0452eec526df868c51b2bdcd4b131ba2;hpb=9bbed78051e80e6ab76ae47834136035602bbbf1;p=clsql.git diff --git a/tests/test-init.lisp b/tests/test-init.lisp index c13f545..28ae587 100644 --- a/tests/test-init.lisp +++ b/tests/test-init.lisp @@ -117,6 +117,29 @@ (:base-table company)) +(def-view-class address () + ((emplid + :db-kind :key + :db-constraints :not-null + :type integer + :initarg :emplid) + (street-number + :type integer + :initarg :street-number) + (street-name + :type (string 30) + :void-value "" + :initarg :street-name) + (city + :column "city_field" + :void-value "no city" + :type (string 30) + :initarg :city) + (postal-code + :column "zip" + :type integer + :void-value 0 + :initarg :postal-code))) (defun test-connect-to-database (db-type spec) (when (db-backend-has-create/destroy-db? db-type) @@ -152,12 +175,19 @@ (defparameter employee8 nil) (defparameter employee9 nil) (defparameter employee10 nil) +(defparameter address1 nil) +(defparameter address2 nil) (defun test-initialise-database () (test-basic-initialize) - (clsql:create-view-from-class 'employee) - (clsql:create-view-from-class 'company) + (let ((*backend-warning-behavior* + (if (member *test-database-type* '(:postgresql :postgresql-socket)) + :ignore + :warn))) + (clsql:create-view-from-class 'employee) + (clsql:create-view-from-class 'company) + (clsql:create-view-from-class 'address)) (setf company1 (make-instance 'company :companyid 1 @@ -254,8 +284,18 @@ :birthday (clsql-base:get-time) :first-name "Vladamir" :last-name "Putin" - :email "putin@soviet.org")) + :email "putin@soviet.org") + address1 (make-instance 'address + :emplid 1 + :street-number 10 + :street-name "Park Place" + :city "Leningrad" + :postal-code 123) + + address2 (make-instance 'address + :emplid 2)) + ;; sleep to ensure birthdays are no longer at current time (sleep 2) @@ -293,7 +333,9 @@ (clsql:update-records-from-instance employee8) (clsql:update-records-from-instance employee9) (clsql:update-records-from-instance employee10) - (clsql:update-records-from-instance company1)) + (clsql:update-records-from-instance company1) + (clsql:update-records-from-instance address1) + (clsql:update-records-from-instance address2)) (defvar *error-count* 0) (defvar *error-list* nil)