X-Git-Url: http://git.kpe.io/?p=hyperobject.git;a=blobdiff_plain;f=tests.lisp;h=3859844e077f5d322d4335d03db0398f58fc4daf;hp=7ee4ad4bd6adb735cc512451048e2c3825db657e;hb=HEAD;hpb=4daae1a3c91e61b3df8fd87d419391b57e2914df diff --git a/tests.lisp b/tests.lisp index 7ee4ad4..3859844 100644 --- a/tests.lisp +++ b/tests.lisp @@ -21,27 +21,27 @@ (defclass person (hyperobject) ((first-name :initarg :first-name :accessor first-name - :value-type (varchar 20) - :value-constraint stringp - :null-allowed nil) + :value-type (varchar 20) + :value-constraint stringp + :null-allowed nil) (last-name :initarg :last-name :accessor last-name - :value-type (varchar 30) - :value-constraint stringp - :hyperlink find-person-by-last-name - :hyperlink-parameters (("narrow" . "yes")) - :null-allowed nil) + :value-type (varchar 30) + :value-constraint stringp + :hyperlink find-person-by-last-name + :hyperlink-parameters (("narrow" . "yes")) + :null-allowed nil) (full-name :value-type string :stored nil) (dob :initarg :dob :accessor dob - :value-type integer - :print-formatter date-string - :value-constraint integerp - :input-filter convert-to-date) + :value-type integer + :print-formatter date-string + :value-constraint integerp + :input-filter convert-to-date) (resume :initarg :resume :accessor resume - :value-type string - :value-constraint stringp) + :value-type string + :value-constraint stringp) ;; (addresses :value-type (list-of subobject) :initarg :addresses :accessor addresses)) (addresses :initarg :addresses :accessor addresses - :subobject t) + :subobject t) (create-time :accessor create-time :compute-cached-value (get-now))) (:metaclass hyperobject-class) (:default-initargs :first-name "" :last-name "" :dob 0 :resume nil) @@ -50,17 +50,17 @@ (:description "A Person") (:direct-rules (:rule-1 (:dependants (last-name first-name) :volatile full-name) - (setf full-name (concatenate 'string first-name " " last-name))))) + (setf full-name (concatenate 'string first-name " " last-name))))) (defclass address (hyperobject) ((title :initarg :title :accessor title - :value-type (varchar 20) - :value-constraint stringp) + :value-type (varchar 20) + :value-constraint stringp) (street :initarg :street :accessor street - :value-type (varchar 30) - :value-constraint stringp) + :value-type (varchar 30) + :value-constraint stringp) (phones :initarg :phones :accessor phones - :subobject t) + :subobject t) (years-at-address :initarg :years-at-address :value-type fixnum :accessor years-at-address :value-constraint integerp)) @@ -72,12 +72,12 @@ (defclass phone (hyperobject) ((title :initarg :title :accessor title - :value-type (varchar 20) - :value-constraint stringp) + :value-type (varchar 20) + :value-constraint stringp) (phone-number :initarg :phone-number :accessor phone-number - :value-type (varchar 16) - :value-constraint stringp - :hyperlink search-phone-number)) + :value-type (varchar 16) + :value-constraint stringp + :hyperlink search-phone-number)) (:metaclass hyperobject-class) (:user-name "Phone Number") (:default-initargs :title nil :phone-number nil) @@ -93,18 +93,18 @@ (defparameter home (make-instance 'address :title "Home" :street "321 Shady Lane" :years-at-address 10 - :phones (list home-phone-1 home-phone-2))) + :phones (list home-phone-1 home-phone-2))) (defparameter office (make-instance 'address :title "Office" :street "113 Main St." :years-at-address 5 - :phones (list office-phone-1 office-phone-2 office-phone-3))) + :phones (list office-phone-1 office-phone-2 office-phone-3))) (defparameter mary (make-instance 'person :first-name "Mary" :last-name "Jackson" - :dob (encode-universal-time - 1 2 3 4 5 2000) - :addresses (list home office) - :resume "Style & Grace")) + :dob (encode-universal-time + 1 2 3 4 5 2000) + :addresses (list home office) + :resume "Style & Grace")) (defun view-to-string (obj &rest args) @@ -114,11 +114,11 @@ (rem-all-tests) (deftest :p1 (view-to-string mary :vid :compact-text) "Person: - Mary Jackson Thu, 4 May 2000 03:02:01 Style & Grace + Mary Jackson Thu 4 May 2000 03:02:01 Style & Grace ") (deftest :p2 (view-to-string mary :subobjects t :vid :compact-text) "Person: - Mary Jackson Thu, 4 May 2000 03:02:01 Style & Grace + Mary Jackson Thu 4 May 2000 03:02:01 Style & Grace Addresses: Home 321 Shady Lane 10 Phone Numbers: @@ -133,12 +133,12 @@ (deftest :p3 (view-to-string mary :vid :compact-text-labels) "Person: - first-name Mary last-name Jackson dob Thu, 4 May 2000 03:02:01 resume Style & Grace + first-name Mary last-name Jackson dob Thu 4 May 2000 03:02:01 resume Style & Grace ") (deftest :p4 (view-to-string mary :vid :compact-text) "Person: - Mary Jackson Thu, 4 May 2000 03:02:01 Style & Grace + Mary Jackson Thu 4 May 2000 03:02:01 Style & Grace ") (deftest :cv1 (years-at-address home) @@ -150,7 +150,6 @@ (deftest :cv3 (equal (create-time mary) *now*) t) - (deftest :s1 (slot-value (class-of mary) 'ho::user-name) "Person") @@ -159,3 +158,6 @@ (deftest :s3 (slot-value (class-of home) 'ho::user-name-plural) "Addresses") + +(deftest :s4 (slot-value (class-of mary) 'ho::description) + "A Person")