submethods.test

Clone Tools
  • last updated 9 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
improved spelling

  1. … 18 more files in changeset.
* tests/submethods.test: Test for various conditions of unknown handling for ensemble methods of varying depth; also covers the crash condition reported on c.l.t, introduced with [156a37f]

* tests/*.test: Add 'package prefer latest' to remaining test files.

  1. … 32 more files in changeset.
handle ticket #3 on sourceforge: explicit "next" call in ensemble leads to unwanted "unknown" handler call

  1. … 1 more file in changeset.
Make test suite working under 8.5, again.

  1. … 8 more files in changeset.
Add some tests, to be continued

  1. … 1 more file in changeset.
nsf.c (ObjectCmdMethodDispatch), submethods.test: Enable private checking on ensembles, added test cases to capture the intented behaviour behind -local and/or private for ensemble methods.

  1. … 1 more file in changeset.
submethods.test: Extend the tests on private ensemble methods slightly

nsf.c (ObjectCmdMethodDispatch): Enable private checking on ensembles

nsf.c (ObjectCmdMethodDispatch): Enable private checking on ensembles

  1. … 1 more file in changeset.
* nsf.c (NsfMethodForwardCmd): Provide correct scoping condition when requesting a method handle for a submethod forwarder. Added basic tests.

  1. … 1 more file in changeset.
* nsf.c (NsfCurrentCmd), nsfStack.c (CallStackNextFrameOfType): Render [current isnextcall] aware of ensembles. Extended submethods.test to cover [current isnextcall] within ensembles.

  1. … 2 more files in changeset.
nsf.c (FindSelfNext): Render [current nextmethod] aware of ensembles. Added basic tests.

  1. … 1 more file in changeset.
submethods.test: Clean up ensembles on top-level objects.

* nsf.c (GetNextArguments): Ensemble method names via the colon resolver were not cleansed for the colon, leading to a broken method lookup chain. Fix for SF Ticket #1. Added basic tests.

  1. … 1 more file in changeset.
- new introspection method: "/obj/ info baseclass" - extended regression test

  1. … 10 more files in changeset.
- extend regression test

Adding a test showing the yet to solve unknown-handling issue in info ensembles

XXX

  1. … 2 more files in changeset.
nx.tcl: pluralism reform part 3 - introduced simple plural form "mixins" and "filters" for introspection - moved differentiated interface into slot methods. the slot methods "get" stay symmetrically to "set", but additional methods "classes" or "methods" are used like "guard" to obtain partial results of the mixin and filter specs - changed info methods /cls/ info mixin classes -> /cls/ info mixins /cls/ info filter methods -> /cls/ info filters /obj/ info object mixin classes -> /obj/ info object mixins /obj/ info object filter methods -> /obj/ info object filters - dropped /cls/ info mixin guard /cls/ info filter guard /obj/ info object mixin guard /obj/ info object filter guard - added /cls/ mixin classes /cls/ filter methods /obj/ object filter methods /obj/ object mixin classes

  1. … 14 more files in changeset.
nx.tcl: pluralism reform part 2 - changed methods /cls/ info subclass -> /cls/ info subclasses /cls/ info superclass -> /cls/ info superclasses /cls/ mixin ... -> /cls/ mixins /cls/ filter ... -> /cls/ filters /cls/ object mixin ... -> /cls/ object mixins /cls/ object filter ... -> /cls/ object filters - changed configure parameters /cls/ configure -mixin -> /cls/ configure -mixins /cls/ configure -filter -> /cls/ configure -filters /obj/ configure -object-mixin -> /obj/ configure -object-mixins /obj/ configure -object-filter -> /obj/ configure -object-filters - added handling for calling relationslot with unknown sub method

  1. … 31 more files in changeset.
- simplify test

- fix name paths in error messages triggered from ArgumentParse()

  1. … 5 more files in changeset.
Saving away the ad hoc changes to fix method-path generation

  1. … 6 more files in changeset.
nx.tcl - drop short form "/obj/ info configure" for now - make output of "/obj/ info lookup configure syntax" equivalent to "/obj/ info configure"

  1. … 6 more files in changeset.
nx.tcl - switch from "/obj/ info parameter" -> "nsf::parameter::get" to reduce potential semantic confusion of info options. "info parameter" was not object/class specific at all, but is just a syntax extractor

  1. … 6 more files in changeset.
- enforce using "set" for filter/object-filter in slot operations (same as for mixins)

  1. … 10 more files in changeset.
nx.tcl: - add "set" as a method name for relation slots - implemented relation slot "mixin" and "object-mixin" via "slotassign" to disallow "/obj/ mixin /value/" and "/obj/ object mixin /value/" to use instead "/obj/ mixin set /value/" and "/obj/ object mixin set /value/" while keeping "configure" and "cget" working. This has the advantage that "/obj/ mixin set" does not try to replace the mixin chain by "set" - adapted regression test - TODO: check, if we need the explicit "slotassign"? isn't the presence of the slotObj sufficient? maybe "-forwardToSlot" in relationSlots? - TODO: demangle "slotassign" in "ObjectParameterSlot protected method getParameterOptions" and check interactions - TODO: to the same as -mixin and -object-mixin to -filter and -object-filter - TODO: clean up relation slot mixin variants - TODO: do we really like the fact that we have to write now "B mixin set M2" instead of "B mixin M2"? - TODO: should we disallow "B mixin" and enforce instead of "B mixin get" ? - TODO: we could as well allow "B mixin clear" instead of "B mixin set {}" - TODO: allow "set" for variable slots as well. Do we need "assign"?

  1. … 14 more files in changeset.
- add flag "-onerror" to nsf::forward::method to handle errors during dispatch of a forwarder (not all error messags of forwarder are already transformed) - added log-level Info which prints always, e.g. for "-verbose" flag of forwarder - drop setter-rule from properties (use always forwarder) - drop "/obj/ /prop/" and "/obj/ /prop/ /value/" in favor of "/obj/ /prop/ get" and "/obj/ /prop/ assign /value/" to achieve better orthogonality with e.g. incremental properties

  1. … 16 more files in changeset.
nsf.c: - let [current methodpath] return full path (similar to -path option in "info methods" - handle collateral damage in regression test due to changed result of "current methodpath"

  1. … 4 more files in changeset.