Test output for protolk [ok]
Testing time: 1s
/home/mario/local/chicken-4.8.0.3/bin/csi -script run.scm < /dev/null -- testing with-replacements ------------------------------------------------- sets the given variables within the body ............................. [ PASS] resets the variables after the body .................................. [ PASS] resets the variables even if the body has an error ................... [ PASS] can be used to set just one variable ................................. [ PASS] can be used to set local variables ................................... [ PASS] can be used to set global function definitons ........................ [ PASS] 6 tests completed in 0.001 seconds. 6 out of 6 (100%) tests passed. -- done testing with-replacements -------------------------------------------- -- testing pob pritimive record type ----------------------------------------- -- testing %make-pob ----------------------------------------------------- succeeds when given a base, props, methods, prop-resolver, and method-resolver [ PASS] fails when given no args ......................................... [ PASS] fails when given only one arg .................................... [ PASS] fails when given only two args ................................... [ PASS] fails when given only three args ................................. [ PASS] fails when given only four args .................................. [ PASS] fails when given six or more args ................................ [ PASS] 7 tests completed in 0.001 seconds. 7 out of 7 (100%) tests passed. -- done testing %make-pob ------------------------------------------------ -- testing pob? ---------------------------------------------------------- returns #t when given a pob ...................................... [ PASS] returns #f when given a non-pob .................................. [ PASS] fails when given no args ......................................... [ PASS] 3 tests completed in 0.0 seconds. 3 out of 3 (100%) tests passed. -- done testing pob? ----------------------------------------------------- -- testing %pob-base ----------------------------------------------------- returns the pob's base slot value ................................ [ PASS] fails when given a non-pob ....................................... [ PASS] fails when given no args ......................................... [ PASS] 3 tests completed in 0.0 seconds. 3 out of 3 (100%) tests passed. -- done testing %pob-base ------------------------------------------------ -- testing %pob-set-base! ------------------------------------------------ modifies the pob's base slot value ............................... [ PASS] fails when given a non-pob ....................................... [ PASS] fails when given no args ......................................... [ PASS] fails when given only one arg .................................... [ PASS] 4 tests completed in 0.001 seconds. 4 out of 4 (100%) tests passed. -- done testing %pob-set-base! ------------------------------------------- -- testing %pob-props ---------------------------------------------------- returns the pob's props slot value ............................... [ PASS] fails when given a non-pob ....................................... [ PASS] fails when given no args ......................................... [ PASS] 3 tests completed in 0.0 seconds. 3 out of 3 (100%) tests passed. -- done testing %pob-props ----------------------------------------------- -- testing %pob-set-props! ----------------------------------------------- modifies the pob's props slot value .............................. [ PASS] fails when given a non-pob ....................................... [ PASS] fails when given no args ......................................... [ PASS] fails when given only one arg .................................... [ PASS] 4 tests completed in 0.0 seconds. 4 out of 4 (100%) tests passed. -- done testing %pob-set-props! ------------------------------------------ -- testing %pob-methods -------------------------------------------------- returns the pob's methods slot value ............................. [ PASS] fails when given a non-pob ....................................... [ PASS] fails when given no args ......................................... [ PASS] 3 tests completed in 0.0 seconds. 3 out of 3 (100%) tests passed. -- done testing %pob-methods --------------------------------------------- -- testing %pob-set-methods! --------------------------------------------- modifies the pob's methods slot value ............................ [ PASS] fails when given a non-pob ....................................... [ PASS] fails when given no args ......................................... [ PASS] fails when given only one arg .................................... [ PASS] 4 tests completed in 0.001 seconds. 4 out of 4 (100%) tests passed. -- done testing %pob-set-methods! ---------------------------------------- -- testing %pob-prop-resolver -------------------------------------------- returns the pob's prop-resolver slot value ....................... [ PASS] fails when given a non-pob ....................................... [ PASS] fails when given no args ......................................... [ PASS] 3 tests completed in 0.0 seconds. 3 out of 3 (100%) tests passed. -- done testing %pob-prop-resolver --------------------------------------- -- testing %pob-set-prop-resolver! --------------------------------------- modifies the pob's prop-resolver slot value ...................... [ PASS] fails when given a non-pob ....................................... [ PASS] fails when given no args ......................................... [ PASS] fails when given only one arg .................................... [ PASS] 4 tests completed in 0.0 seconds. 4 out of 4 (100%) tests passed. -- done testing %pob-set-prop-resolver! ---------------------------------- -- testing %pob-method-resolver ------------------------------------------ returns the pob's method-resolver slot value ..................... [ PASS] fails when given a non-pob ....................................... [ PASS] fails when given no args ......................................... [ PASS] 3 tests completed in 0.0 seconds. 3 out of 3 (100%) tests passed. -- done testing %pob-method-resolver ------------------------------------- -- testing %pob-set-method-resolver! ------------------------------------- modifies the pob's method-resolver slot value .................... [ PASS] fails when given a non-pob ....................................... [ PASS] fails when given no args ......................................... [ PASS] fails when given only one arg .................................... [ PASS] 4 tests completed in 0.001 seconds. 4 out of 4 (100%) tests passed. -- done testing %pob-set-method-resolver! -------------------------------- 12 subgroups completed in 0.004 seconds. 12 out of 12 (100%) subgroups passed. -- done testing pob pritimive record type ------------------------------------ -- testing primitive prop accessors ------------------------------------------ -- testing %has-prop? ---------------------------------------------------- returns #t when the pob has a matching prop ...................... [ PASS] returns #f when the pob does not have a matching prop ............ [ PASS] fails when given a non-pob ....................................... [ PASS] fails when no prop name is specified ............................. [ PASS] 4 tests completed in 0.0 seconds. 4 out of 4 (100%) tests passed. -- done testing %has-prop? ----------------------------------------------- -- testing %prop --------------------------------------------------------- returns the value of a matching prop ............................. [ PASS] returns #<unspecified> when there is no matching prop ............ [ PASS] optionally accepts a default return value ........................ [ PASS] fails when given a non-pob ....................................... [ PASS] fails when no prop name is specified ............................. [ PASS] 5 tests completed in 0.0 seconds. 5 out of 5 (100%) tests passed. -- done testing %prop ---------------------------------------------------- -- testing %resolve-prop ------------------------------------------------- calls the pob's prop-resolver with the given args ................ [ PASS] 1 test completed in 0.0 seconds. 1 out of 1 (100%) test passed. -- done testing %resolve-prop -------------------------------------------- -- testing %set-prop! ---------------------------------------------------- sets the specified prop in the pob ............................... [ PASS] replaces the value of existing props with that name .............. [ PASS] fails when given no args ......................................... [ PASS] fails when given a non-pob ....................................... [ PASS] fails when no prop name or value is specified .................... [ PASS] fails when no value is specified ................................. [ PASS] 6 tests completed in 0.001 seconds. 6 out of 6 (100%) tests passed. -- done testing %set-prop! ----------------------------------------------- -- testing %unset-prop! -------------------------------------------------- removes all matching props from the pob .......................... [ PASS] has no effect if there are no matching props ..................... [ PASS] fails when given no args ......................................... [ PASS] fails when given a non-pob ....................................... [ PASS] fails when no prop name is specified ............................. [ PASS] 5 tests completed in 0.0 seconds. 5 out of 5 (100%) tests passed. -- done testing %unset-prop! --------------------------------------------- 5 subgroups completed in 0.001 seconds. 5 out of 5 (100%) subgroups passed. -- done testing primitive prop accessors ------------------------------------- -- testing primitive method accessors ---------------------------------------- -- testing %has-method? -------------------------------------------------- returns #t when the pob has a matching method .................... [ PASS] returns #f when the pob does not have a matching method .......... [ PASS] fails when given a non-pob ....................................... [ PASS] fails when no method name is specified ........................... [ PASS] 4 tests completed in 0.001 seconds. 4 out of 4 (100%) tests passed. -- done testing %has-method? --------------------------------------------- -- testing %method ------------------------------------------------------- returns the value of a matching method ........................... [ PASS] returns #<unspecified> when there is no matching method .......... [ PASS] optionally accepts a default return value ........................ [ PASS] fails when given a non-pob ....................................... [ PASS] fails when no method name is specified ........................... [ PASS] 5 tests completed in 0.0 seconds. 5 out of 5 (100%) tests passed. -- done testing %method -------------------------------------------------- -- testing %resolve-method ----------------------------------------------- calls the pob's method-resolver with the given args .............. [ PASS] 1 test completed in 0.0 seconds. 1 out of 1 (100%) test passed. -- done testing %resolve-method ------------------------------------------ -- testing %set-method! -------------------------------------------------- sets the specified method in the pob ............................. [ PASS] replaces the value of existing methods with that name ............ [ PASS] fails when given no args ......................................... [ PASS] fails when given a non-pob ....................................... [ PASS] fails when no method name or value is specified .................. [ PASS] fails when no value is specified ................................. [ PASS] 6 tests completed in 0.0 seconds. 6 out of 6 (100%) tests passed. -- done testing %set-method! --------------------------------------------- -- testing %unset-method! ------------------------------------------------ removes all matching methods from the pob ........................ [ PASS] has no effect if there are no matching methods ................... [ PASS] fails when given no args ......................................... [ PASS] fails when given a non-pob ....................................... [ PASS] fails when no method name is specified ........................... [ PASS] 5 tests completed in 0.001 seconds. 5 out of 5 (100%) tests passed. -- done testing %unset-method! ------------------------------------------- 5 subgroups completed in 0.002 seconds. 5 out of 5 (100%) subgroups passed. -- done testing primitive method accessors ----------------------------------- -- testing %method-context --------------------------------------------------- is a parameter used to store context for the current method .......... [ PASS] 1 test completed in 0.0 seconds. 1 out of 1 (100%) test passed. -- done testing %method-context ---------------------------------------------- -- testing %active-pob ------------------------------------------------------- returns the active pob in the current context ........................ [ PASS] returns #f if there is no active pob ................................. [ PASS] is read-only ......................................................... [ PASS] 3 tests completed in 0.001 seconds. 3 out of 3 (100%) tests passed. -- done testing %active-pob -------------------------------------------------- -- testing %active-method-name ----------------------------------------------- returns the active method name in the current context ................ [ PASS] returns #f if there is no active method .............................. [ PASS] is read-only ......................................................... [ PASS] 3 tests completed in 0.0 seconds. 3 out of 3 (100%) tests passed. -- done testing %active-method-name ------------------------------------------ -- testing %super-context ---------------------------------------------------- is a parameter that stores the super pob, method name, and args ...... [ PASS] is #f by default ..................................................... [ PASS] 2 tests completed in 0.0 seconds. 2 out of 2 (100%) tests passed. -- done testing %super-context ----------------------------------------------- -- testing %same-super-context? ---------------------------------------------- is true if the pob and method name match the super context ........... [ PASS] is false if the pob does not match the super context ................. [ PASS] is false if the pob does not match the super context ................. [ PASS] is false if there is no super context ................................ [ PASS] 4 tests completed in 0.0 seconds. 4 out of 4 (100%) tests passed. -- done testing %same-super-context? ----------------------------------------- -- testing %super-invoked-procs ---------------------------------------------- is a parameter that stores a list of already-invoked procedures ...... [ PASS] is the empty list by default ......................................... [ PASS] 2 tests completed in 0.0 seconds. 2 out of 2 (100%) tests passed. -- done testing %super-invoked-procs ----------------------------------------- -- testing %super-resolve-next-method ---------------------------------------- returns the pob's method if there are no invoked procs ............... [ PASS] returns the next inherited proc not in the list ...................... [ PASS] returns #f if there are no inherited procs not in the list ........... [ PASS] does not care about the order of the already invoked procs ........... [ PASS] returns #f if pob neither contains nor inherits the method ........... [ PASS] returns #f if pob has no base and no method .......................... [ PASS] 6 tests completed in 0.001 seconds. 6 out of 6 (100%) tests passed. -- done testing %super-resolve-next-method ----------------------------------- -- testing %start-super ------------------------------------------------------ takes a pob, method name, and list of args ........................... [ PASS] sets up a new super context then calls %continue-super ............... [ PASS] 2 tests completed in 0.001 seconds. 2 out of 2 (100%) tests passed. -- done testing %start-super ------------------------------------------------- -- testing %continue-super --------------------------------------------------- calls the proc returned by %super-resolve-next-method ................ [ PASS] sets %super-context and %super-invoked-procs before the call ......... [ PASS] raises '(context super) if there is no next method ................... [ PASS] includes the pob and method name in the error ........................ [ PASS] 4 tests completed in 0.0 seconds. 4 out of 4 (100%) tests passed. -- done testing %continue-super ---------------------------------------------- -- testing %super ------------------------------------------------------------ can be called from within a method context ........................... [ PASS] calls %start-super if called with no super context ................... [ PASS] calls %start-super if called with a different super context .......... [ PASS] calls %continue-super if called with the same super context .......... [ PASS] fails if called from outside a method context ........................ [ PASS] 5 tests completed in 0.0 seconds. 5 out of 5 (100%) tests passed. -- done testing %super ------------------------------------------------------- -- testing %super* ----------------------------------------------------------- accepts no args ...................................................... [ PASS] fails if there is no method context .................................. [ PASS] calls %super with the args from the method context ................... [ PASS] 3 tests completed in 0.0 seconds. 3 out of 3 (100%) tests passed. -- done testing %super* ------------------------------------------------------ -- testing make-pob ---------------------------------------------------------- accepts base, props, methods, prop-resolver, and method-resolver keyword args [ PASS] returns a pob with the specified contents ............................ [ PASS] allows all arguments to be omitted ................................... [ PASS] initializes base to #f if omitted .................................... [ PASS] initializes props to the empty list if omitted ....................... [ PASS] initializes methods to the empty list if omitted ..................... [ PASS] initializes prop-resolver to std-prop-resolver if omitted ............ [ PASS] initializes method-resolver to std-method-resolver if omitted ........ [ PASS] 8 tests completed in 0.001 seconds. 8 out of 8 (100%) tests passed. -- done testing make-pob ----------------------------------------------------- -- testing std-prop-resolver ------------------------------------------------- returns a list with self and the prop value, if self defines the prop [ PASS] returns a cons with the nearest ancestor that defines the prop, and the prop value [ PASS] searches ancestors recursively to find the prop value ................ [ PASS] returns #f and the default value if the prop is not found ............ [ PASS] uses #<unspecified> as the default value by default .................. [ PASS] stops searching if it ever finds the prop defined as #<unspecified> .. [ PASS] fails if given no args ............................................... [ PASS] fails if the prop name is omitted .................................... [ PASS] does not fail if given the pob and prop name ......................... [ PASS] does not fail if given the pob, prop name, and default value ......... [ PASS] fails if given a non-pob for the first arg ........................... [ PASS] 11 tests completed in 0.0 seconds. 11 out of 11 (100%) tests passed. -- done testing std-prop-resolver -------------------------------------------- -- testing std-method-resolver ----------------------------------------------- returns a pair with self and the definition if self defines it ....... [ PASS] returns a pair with the nearest ancestor that defines the method, and the definition [ PASS] searches ancestors recursively to find the definition ................ [ PASS] returns #f and the default value if the method is not found .......... [ PASS] uses #<unspecified> as the default value by default .................. [ PASS] stops searching if it ever finds the method defined as #<unspecified> [ PASS] fails if given no args ............................................... [ PASS] fails if the method name is omitted .................................. [ PASS] does not fail if given the pob and method name ....................... [ PASS] does not fail if given the pob, method name, and default value ....... [ PASS] fails if given a non-pob for the first arg ........................... [ PASS] 11 tests completed in 0.001 seconds. 11 out of 11 (100%) tests passed. -- done testing std-method-resolver ------------------------------------------ -- testing send -------------------------------------------------------------- uses the pob's method-resolver to find its _receive method ........... [ PASS] invokes the _receive method with the expected arguments .............. [ PASS] 2 tests completed in 0.0 seconds. 2 out of 2 (100%) tests passed. -- done testing send --------------------------------------------------------- -- testing pob record type printer ------------------------------------------- uses std-_display if it has no _display method ....................... [ PASS] uses the pob's _display method if it has one ......................... [ PASS] uses the _display method inherited from its ancestors ................ [ PASS] 3 tests completed in 0.0 seconds. 3 out of 3 (100%) tests passed. -- done testing pob record type printer -------------------------------------- -- testing std-_receive ------------------------------------------------------ uses the pob's method-resolver to find a matching method ............. [ PASS] invokes the matching method if found ................................. [ PASS] resolves _method-missing if no matching method was found ............. [ PASS] invokes _method-missing if no matching method was found .............. [ PASS] fails if given only a pob ............................................ [ PASS] fails if given only a pob and method name ............................ [ PASS] fails if given too many args ......................................... [ PASS] 7 tests completed in 0.001 seconds. 7 out of 7 (100%) tests passed. -- done testing std-_receive ------------------------------------------------- -- testing std-_method-missing ----------------------------------------------- fails when given only one arg ........................................ [ PASS] fails when given only two args ....................................... [ PASS] fails when given too many args ....................................... [ PASS] raises a 'no-method exception as part of normal operation ............ [ PASS] -- testing the 'no-method exception -------------------------------------- contains an informative error message ............................ [ PASS] contains a 'pob property with the pob who received the message ... [ PASS] contains a 'method-name property with the method name ............ [ PASS] contains an 'args property with the args intended for the method . [ PASS] 4 tests completed in 0.0 seconds. 4 out of 4 (100%) tests passed. -- done testing the 'no-method exception --------------------------------- 4 tests and 1 subgroup completed in 0.001 seconds. 4 out of 4 (100%) tests passed. 1 out of 1 (100%) subgroup passed. -- done testing std-_method-missing ------------------------------------------ -- testing std-_display ------------------------------------------------------ writes "#<pob>" to the given port .................................... [ PASS] uses (current-output-port) if the port is omitted .................... [ PASS] fails if given a non-pob ............................................. [ PASS] fails if the port is not a port ...................................... [ PASS] 4 tests completed in 0.0 seconds. 4 out of 4 (100%) tests passed. -- done testing std-_display ------------------------------------------------- -- testing prop-reader ------------------------------------------------------- accepts a prop name and returns a procedure .......................... [ PASS] fails if given no args ............................................... [ PASS] fails if given too many args ......................................... [ PASS] -- testing the procedure ------------------------------------------------- returns the given pob's value for the matching prop .............. [ PASS] fails if given a non-pob ......................................... [ PASS] fails if given no args ........................................... [ PASS] fails if given too many args ..................................... [ PASS] 4 tests completed in 0.0 seconds. 4 out of 4 (100%) tests passed. -- done testing the procedure -------------------------------------------- 3 tests and 1 subgroup completed in 0.0 seconds. 3 out of 3 (100%) tests passed. 1 out of 1 (100%) subgroup passed. -- done testing prop-reader -------------------------------------------------- -- testing prop-writer ------------------------------------------------------- accepts a prop name and returns a procedure .......................... [ PASS] fails if given no args ............................................... [ PASS] fails if given too many args ......................................... [ PASS] -- testing the procedure ------------------------------------------------- sets the matching prop's value in the given pob .................. [ PASS] returns void ..................................................... [ PASS] fails if given a non-pob ......................................... [ PASS] fails if given no args ........................................... [ PASS] fails if given too many args ..................................... [ PASS] 5 tests completed in 0.0 seconds. 5 out of 5 (100%) tests passed. -- done testing the procedure -------------------------------------------- 3 tests and 1 subgroup completed in 0.001 seconds. 3 out of 3 (100%) tests passed. 1 out of 1 (100%) subgroup passed. -- done testing prop-writer -------------------------------------------------- -- testing own-prop ---------------------------------------------------------- returns the prop value from the active self .......................... [ PASS] raises a 'context error if there is no active self ................... [ PASS] is settable with set! ................................................ [ PASS] 3 tests completed in 0.0 seconds. 3 out of 3 (100%) tests passed. -- done testing own-prop ----------------------------------------------------- -- testing set-own-prop! ----------------------------------------------------- modifies the prop value in the active self ........................... [ PASS] returns #<unspecified> on success .................................... [ PASS] raises a 'context error if there is no active self ................... [ PASS] 3 tests completed in 0.0 seconds. 3 out of 3 (100%) tests passed. -- done testing set-own-prop! ------------------------------------------------ -- testing assert-active-pob ------------------------------------------------- returns #t if the pob is the active pob .............................. [ PASS] raises a 'context error if the given pob is not the active pob ....... [ PASS] raises a 'context error if given #f when there is no active pob ...... [ PASS] accepts an optional error message to use on failure .................. [ PASS] also uses the custom error message when there is no active pob ....... [ PASS] fails if given no args ............................................... [ PASS] 6 tests completed in 0.0 seconds. 6 out of 6 (100%) tests passed. -- done testing assert-active-pob -------------------------------------------- -- testing with-method-context ----------------------------------------------- is a macro that sets the method context .............................. [ PASS] only sets the method context within the scope of its body ............ [ PASS] 2 tests completed in 0.0 seconds. 2 out of 2 (100%) tests passed. -- done testing with-method-context ------------------------------------------ -- testing make-method ------------------------------------------------------- exands into a method procedure definition ............................ [ PASS] sets the method context within the scope of the method body .......... [ PASS] sets the method context appropriately for no args .................... [ PASS] sets the method context appropriately for rest args .................. [ PASS] sets the method context appropriately for optional args .............. [ PASS] sets the method context appropriately for keyword args ............... [ PASS] sets the method context for rest and keyword args together ........... [ PASS] sets the method context for optional and keyword args together ....... [ PASS] sets the method context for optional, rest, and keyword args together [ PASS] 9 tests completed in 0.001 seconds. 9 out of 9 (100%) tests passed. -- done testing make-method -------------------------------------------------- -- testing make-private-method ----------------------------------------------- expands into a private method procedure definition ................... [ PASS] -- testing the resulting method ------------------------------------------ succeeds if the receiver is the active pob ....................... [ PASS] raises an error if the receiver is not the active pob ............ [ PASS] 2 tests completed in 0.0 seconds. 2 out of 2 (100%) tests passed. -- done testing the resulting method ------------------------------------- -- testing the error the method raises ----------------------------------- is a 'private-method exception ................................... [ PASS] contains the pob whose method was called ......................... [ PASS] contains the name of the method that was called .................. [ PASS] contains the args that were passed to the method ................. [ PASS] contains empty args if no args were passed to the method ......... [ PASS] 5 tests completed in 0.0 seconds. 5 out of 5 (100%) tests passed. -- done testing the error the method raises ------------------------------ sets the method context within the scope of the method body .......... [ PASS] sets the method context appropriately for no args .................... [ PASS] sets the method context appropriately for rest args .................. [ PASS] sets the method context appropriately for optional args .............. [ PASS] sets the method context appropriately for keyword args ............... [ PASS] sets the method context for rest and keyword args together ........... [ PASS] sets the method context for optional and keyword args together ....... [ PASS] sets the method context for optional, rest, and keyword args together [ PASS] 9 tests and 2 subgroups completed in 0.002 seconds. 9 out of 9 (100%) tests passed. 2 out of 2 (100%) subgroups passed. -- done testing make-private-method ------------------------------------------ -- testing define-method ----------------------------------------------------- is a macro that defines a method in a pob ............................ [ PASS] replaces any existing method with the same name in that pob .......... [ PASS] -- testing the defined method -------------------------------------------- applies to the receiving pob even when the method is inherited ... [ PASS] 1 test completed in 0.0 seconds. 1 out of 1 (100%) test passed. -- done testing the defined method --------------------------------------- 2 tests and 1 subgroup completed in 0.0 seconds. 2 out of 2 (100%) tests passed. 1 out of 1 (100%) subgroup passed. -- done testing define-method ------------------------------------------------ -- testing define-private-method --------------------------------------------- is a macro that defines a method in a pob ............................ [ PASS] replaces any existing method with the same name in that pob .......... [ PASS] -- testing the defined method -------------------------------------------- is a private method .............................................. [ PASS] applies to the receiving pob even when the method is inherited ... [ PASS] 2 tests completed in 0.001 seconds. 2 out of 2 (100%) tests passed. -- done testing the defined method --------------------------------------- 2 tests and 1 subgroup completed in 0.001 seconds. 2 out of 2 (100%) tests passed. 1 out of 1 (100%) subgroup passed. -- done testing define-private-method ---------------------------------------- -- testing super ------------------------------------------------------------- is a macro ........................................................... [ PASS] expands to a %super call ............................................. [ PASS] 2 tests completed in 0.0 seconds. 2 out of 2 (100%) tests passed. -- done testing super -------------------------------------------------------- -- testing apply-super ------------------------------------------------------- is a macro ........................................................... [ PASS] applies the given args to %super ..................................... [ PASS] 2 tests completed in 0.001 seconds. 2 out of 2 (100%) tests passed. -- done testing apply-super -------------------------------------------------- -- testing super* ------------------------------------------------------------ is a macro ........................................................... [ PASS] accepts no args ...................................................... [ PASS] expands to a %super* call ............................................ [ PASS] 3 tests completed in 0.0 seconds. 3 out of 3 (100%) tests passed. -- done testing super* ------------------------------------------------------- -- testing super? ------------------------------------------------------------ accepts no args ...................................................... [ PASS] fails if there is no super context ................................... [ PASS] returns #f if there is no next super method .......................... [ PASS] returns #t if there is a next super method ........................... [ PASS] 4 tests completed in 0.0 seconds. 4 out of 4 (100%) tests passed. -- done testing super? ------------------------------------------------------- -- testing stdpob-derive ----------------------------------------------------- fails when given #f as the base ...................................... [ PASS] fails when given a non-pob as the base ............................... [ PASS] fails when given no args ............................................. [ PASS] returns a derived pob with the specified contents .................... [ PASS] initializes props to the empty list if omitted ....................... [ PASS] initializes methods to the empty list if omitted ..................... [ PASS] initializes prop-resolver to the base's prop-resolver if omitted ..... [ PASS] initializes method-resolver to the base's method-resolver if omitted . [ PASS] 8 tests completed in 0.0 seconds. 8 out of 8 (100%) tests passed. -- done testing stdpob-derive ------------------------------------------------ -- testing stdpob-ancestors -------------------------------------------------- returns a list of all the pob's ancestors, most immediate first ...... [ PASS] sends 'ancestors to the base to continue the lookup chain ............ [ PASS] ends the lookup chain when it encounters a #f base ................... [ PASS] returns an empty list if the pob's base is #f ........................ [ PASS] returns an empty list if the pob's base is unspecified ............... [ PASS] fails when given a non-pob ........................................... [ PASS] 6 tests completed in 0.001 seconds. 6 out of 6 (100%) tests passed. -- done testing stdpob-ancestors --------------------------------------------- -- testing stdpob-has-ancestor? ---------------------------------------------- returns #t if the second pob is an ancestor of the first pob ......... [ PASS] returns #f if the second pob is not an ancestor of the first pob ..... [ PASS] returns #f if both arguments are the same pob ........................ [ PASS] returns #f if the second argument is #f .............................. [ PASS] returns #f if the second argument is not a pob ....................... [ PASS] sends 'has-ancestor? to the base to continue the lookup .............. [ PASS] fails when given no args ............................................. [ PASS] fails when given only one pob ........................................ [ PASS] fails when given too many args ....................................... [ PASS] fails when the first argument is not a pob ........................... [ PASS] 10 tests completed in 0.0 seconds. 10 out of 10 (100%) tests passed. -- done testing stdpob-has-ancestor? ----------------------------------------- -- testing stdpob-responds-to? ----------------------------------------------- returns #t if the pob has its own matching method .................... [ PASS] returns #t if the pob inherits a matching method from its base ....... [ PASS] returns #t if the pob inherits a matching method from any ancestor ... [ PASS] returns #f if neither the pob nor ancestors have a matching method ... [ PASS] returns #f if the pob defines the matching method as #<unspecified> .. [ PASS] returns #f if the pob inherits #<unspecified> from its base .......... [ PASS] returns #f if the pob inherits #<unspecified> from any ancestor ...... [ PASS] accepts (but ignores) any number of args after the message ........... [ PASS] sends 'responds-to? to the base to continue the lookup ............... [ PASS] fails if given no args ............................................... [ PASS] fails if the message is omitted ...................................... [ PASS] 11 tests completed in 0.001 seconds. 11 out of 11 (100%) tests passed. -- done testing stdpob-responds-to? ------------------------------------------ -- testing stdpob ------------------------------------------------------------ is a pob that exists by default ...................................... [ PASS] has base set to #f ................................................... [ PASS] has prop-resolver sot to std-prop-resolver ........................... [ PASS] has method-resolver set to std-method-resolver ....................... [ PASS] has a '_display method set to std-_display? .......................... [ PASS] has a '_receive method set to std-_receive ........................... [ PASS] has a '_method-missing method set to std-_method-missing ............. [ PASS] has a 'derive method set to stdpob-derive ............................ [ PASS] has an 'ancestors method set to stdpob-ancestors ..................... [ PASS] has a 'has-ancestor? method set to stdpob-has-ancestor? .............. [ PASS] has a 'responds-to? method set to stdpob-responds-to? ................ [ PASS] 11 tests completed in 0.0 seconds. 11 out of 11 (100%) tests passed. -- done testing stdpob -------------------------------------------------------