Index: tests/submethods.test =================================================================== diff -u -r7413d266916a491ff674489513351c89987366d7 -r33d4fb2329d25b2a4e9ba05d312dfde2c73c3409 --- tests/submethods.test (.../submethods.test) (revision 7413d266916a491ff674489513351c89987366d7) +++ tests/submethods.test (.../submethods.test) (revision 33d4fb2329d25b2a4e9ba05d312dfde2c73c3409) @@ -332,11 +332,14 @@ ? {obj ifoo} ::ns1::obj::info # To some surprise, we can can still call info class! # This works, since we do here an "ensemble-next" - ? {obj info class} ::nx::Object + #? {obj info class} ::nx::Object + ? {obj info class} {::ns1::obj::info: unable to dispatch method 'class'} # The ensemble-next has in case of foo the leading colon on the # callstack (e.g. ":info"). Make sure that we can still call the # method via ensemle-next. - ? {obj foo} ::nx::Object + #? {obj foo} ::nx::Object + ? {obj foo} {::ns1::obj::info: unable to dispatch method 'class'} + } # @@ -565,33 +568,45 @@ ::nsf::object::property obj::child allowmethoddispatch false ? {obj link1 foo} {::obj::child} - ? {obj link2 foo} {::obj: unable to dispatch method 'child'} + #? {obj link2 foo} {::obj: unable to dispatch method 'child'} + ? {obj link2 foo} {::obj::child} ? {obj link3 foo} {::obj::child} ? {obj link4 foo} {::obj::child} ? {obj link5 foo} {::obj::child} - ? {lsort [obj info methods child]} {} - ? {lsort [obj info methods]} {link1 link2 link3 link4 link5} - ? {lsort [obj info lookup methods child]} {} - ? {lsort [obj info lookup methods child*]} {} + #? {lsort [obj info methods child]} {} + #? {lsort [obj info methods]} {link1 link2 link3 link4 link5} + #? {lsort [obj info lookup methods child]} {} + #? {lsort [obj info lookup methods child*]} {} + ? {lsort [obj info methods child]} {child} + ? {lsort [obj info methods]} {child link1 link2 link3 link4 link5} + ? {lsort [obj info lookup methods child]} {child} + ? {lsort [obj info lookup methods child*]} {child} # # turn on keepcallerself # ::nsf::object::property obj::child keepcallerself true ::nsf::object::property obj::child allowmethoddispatch false + ::nsf::object::property obj::child perobjectdispatch true ? {obj link1 foo} {::obj::child} - ? {obj link2 foo} {::obj: unable to dispatch method 'child'} + #? {obj link2 foo} {::obj: unable to dispatch method 'child'} + ? {obj link2 foo} {::obj} ? {obj link3 foo} {::obj::child} ? {obj link4 foo} {::obj} ? {obj link5 foo} {::obj::child} - ? {lsort [obj info methods child]} {} - ? {lsort [obj info methods]} {link1 link2 link3 link4 link5} - ? {lsort [obj info lookup methods child]} {} - ? {lsort [obj info lookup methods child*]} {} + #? {lsort [obj info methods child]} {} + #? {lsort [obj info methods]} {link1 link2 link3 link4 link5} + #? {lsort [obj info lookup methods child]} {} + #? {lsort [obj info lookup methods child*]} {} + ? {lsort [obj info methods child]} {child} + ? {lsort [obj info methods]} {child link1 link2 link3 link4 link5} + ? {lsort [obj info lookup methods child]} {child} + ? {lsort [obj info lookup methods child*]} {child} + # # turn on allowmethoddispatch #