tests

Clone Tools
  • last updated 4 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- made the "next scripting laguage" a own, loadable tcl package (currently named nx, name is subject of change) - predefined.tcl is now pretty minimal.

  1. … 21 more files in changeset.
- added interp alias "nx::self" to "nx::core::current method" - changed "current proc" into "current method" in scripts and tests

  1. … 6 more files in changeset.
- updated migration guide, added section for callstack introspection - updated serializer for new names

  1. … 3 more files in changeset.
- xotcl.c: * new function GetObjectFromNsName() to obtail object or class from a fully qualified namespace name used in method handles (such as e.g. ::nx::core::classes::X) * new function MethodHandleObj() to return a tcl_obj containing the methodhandle * removed obsolete method getFullProcQualifier() * info methods obtain now object and/or class from fully qualified method names (method handles) if possible * return message handles in "current next", "current filterreg" and "... info filter ... -order", which can be used in "info method .... " for obtaining more details. * change all occurrances of "self" in next regression tests to current. - xotcl2.tcl * implemented "self" as a proc to provide extensibility and full backward compatibilty; this opens opportunity to replace now e.g. "self proc" by "current method", etc. * provide full compatibility for "self next", "self filterreg" and "... info filter ... -order", returning old-style multiword method handles (such as e.g. "::C instproc foo") - changed "next" to current in documentation framework and templates

  1. … 12 more files in changeset.
- iterated through doc.tcl-TODOs - changed CheckVarName to allow array names like e.g. a(::b) - extended regression test - fixed serializer to handle subobjects of explicitely exported objects

  1. … 3 more files in changeset.
- deactivated __next for now - iterated thought doc.tcl-TODOs - fixed path in invocation of xotcl doc script

  1. … 11 more files in changeset.
- moved slottest to library/xotcl - added new Makefile target test-xotcl - finished test migration for now

  1. … 3 more files in changeset.
- moved some more xotcl specfic tests to library/xotcl - transformed forwardtest from xotcl to next

    • -0
    • +390
    ./forwardtest.tcl
  1. … 7 more files in changeset.
- created own directory structure xotcl under library containing doc, tests, apps, lib etc. and moved obvious content here. - adjusted regression test and old documentation system to work with new structure

  1. … 402 more files in changeset.
- renamed mk_predefined.xotcl -> mk_predefined.tcl - renamed predefined.xotcl -> predefined.tcl - additional subcommand "info method parametersyntax <methodname>" returns parameters in a syntax similar to the tcl man pages - added ability to pass syntax for forwarded methods via set ::nx::core::signature(::nx::Object-method-forward) (experimental) - fixed documentation system to work with actual version - added undocumented methods for quality control in documentation - added checks for documented, but unavailable methods in documentation - added comparison of documented parameters vs. actual parameters in documentation

  1. … 16 more files in changeset.
- changed "Serializer.xotcl" to "serializer.tcl" (package name from xotcl::serializer to nx::serializer) - added stub for xotcl::serializer for backward compatibility - changed serializer to new namespaces - renamed xotcl.tcl to xotcl2.tcl - added proc finalize to xotcl2.tcl

  1. … 10 more files in changeset.
- added section about registering filters and mixin to migration guide - moved and transformed to next tests/mixinoftest.xotcl -> tests/mixinoftest.tcl - moved and transformed to next tests/object-system.xotcl -> tests/object-system.tcl

    • -0
    • +514
    ./mixinoftest.tcl
    • -0
    • +200
    ./object-system.tcl
  1. … 2 more files in changeset.
- changed prefix

- changed "require next" to "... nx" - changed "require next::test" to "... nx::test" - changed "require next::doc" to "... nx::doc"

    • -0
    • +127
    ./interceptor-slot.tcl
  1. … 19 more files in changeset.
- renamed tests/method-modifiers.xotcl to tests/method-modifiers.tcl - changed "require xotcl::test" to "... next::test"

    • -0
    • +279
    ./method-modifiers.tcl
  1. … 8 more files in changeset.
- get rid of ":::xotcl::use" - renamed tests based on next from .xotcl to .tcl - extended regression tests - use namespace ::nx::test instead of ::xotcl::test - use namespace ::nx::serializer instead of ::xotcl::serializer

    • -0
    • +591
    ./destroytest.tcl
  1. … 13 more files in changeset.
- provide error messages for [objectproperty ... type ...] - replace 0 by NULL in calls to GetClassFromObj() - extended regression test

  1. … 4 more files in changeset.
- reanimated "info vars" to show locals in eval method

  1. … 4 more files in changeset.
- removed "[o exists varname]" from next scripting language

  1. … 6 more files in changeset.
- updated migration guide - updated TODO

  1. … 3 more files in changeset.
- renamed varresolutiontest to .tcl - updated TODO

    • -0
    • +720
    ./varresolutiontest.tcl
  1. … 2 more files in changeset.
- new function CheckVarName() to check for colons in instance variable names - unified name-checking in "nx::var import|exists|set" - extended regression test

  1. … 2 more files in changeset.
- I created a first draft of the nx language manual, based on the new next::doc facilities. It is still incomplete, but demonstrates the use of next::doc for authoring code documentation.

To re-create the language reference (which is not yet integrated into

the build environment), run:

./nextsh tests/doc.xotcl

You will then find an output directory "NextLanguageCore" in your

/tmp/ directory.

- The next::doc comments which are sourced for generating the manual

can be found in generic/gentclAPI.decls and

generic/predefined.xotcl. I tried to add most comments to the

former, as the complexity of the predefined script does not comfort

documentation comments (and vice versa).

- Applied many fixes to the templates (based on the needs of the

language reference)

  1. … 9 more files in changeset.
- Added a placeholder logo image, to replace the YUI one for the time being - Provided for giving some version information at either the project or package level

  1. … 4 more files in changeset.
- Adding basic support for subcommands (a @subcommand part type; formerly @variant) - Introducing comment reuse and cross-linkage along the class hierarchy upwards ("subclass of ...", showing inherited attributes and methods; using a @superclass attribute) - Amending the documentation of @param and @return with "type" information (checkoptions, constraints, defaults) - Showing both per-class and per-object methods - I now allow for inline- and out-of-line (block) code snippets in the description sections, based on wiki-like {{{...}}} marker annotation (same as in scaladoc2). - Adding support for newline representations in description sections (for a more convenient formatting). - Some bugfixes (e.g., @object-method did not work outside of an initcmd) - Started refactoring the entity tracing procedure (moving from [namespace import] resolution to mixin-based creation tracing)

  1. … 3 more files in changeset.
- Adding basic support for subcommands (a @subcommand part type; formerly @variant) - Introducing comment reuse and cross-linkage along the class hierarchy upwards ("subclass of ...", showing inherited attributes and methods; using a @superclass attribute) - Amending the documentation of @param and @return with "type" information (checkoptions, constraints, defaults) - Showing both per-class and per-object methods - I now allow for inline- and out-of-line (block) code snippets in the description sections, based on wiki-like {{{...}}} marker annotation (same as in scaladoc2). - Adding support for newline representations in description sections (for a more convenient formatting). - Some bugfixes (e.g., @object-method did not work outside of an initcmd) - Started refactoring the entity tracing procedure (moving from [namespace import] resolution to mixin-based creation tracing)

  1. … 3 more files in changeset.
- don't allow names with namespace separators or colon prefix in importvar/instvar - provide error message, when method (proc scope) is not found - fix array boundaries for looping on variables in importvar/instvar - extended regression test

  1. … 3 more files in changeset.
- fix cleanup of subclasses of metaclasses, keeping metaclass property (thanks to Stefan for digging into this)

  1. … 1 more file in changeset.
- Added a first set of documentation templates, based on the the TemplateData engine and the YUI doc styles available from http://yuilibrary.com/downloads/ (see library/lib/doc-assets/*.tmpl.html) - Added a @project entity class, which will become the root concept in a documentation hierarchy. For now, it only serves for some auxiliary purposes when processing the doc templates. - Continued documenting the next::doc package for testing purposes.

  1. … 12 more files in changeset.
- I made sure that the existing HtmlRenderer infrastructure remains functional - Added a simplistic templating machinery (see TemplateData), based on cascading [subst] calls in per-object evals (assuming the nonleaf mode) and a basic templating instruction set (i.e., "let", "for", as well as "?" representing if-elseif-else blocks and "include" for composing template fragments). This will help me to transpose the YUI doc templates more easily (and split them up into template fragments). Also, it will allow future documentation writers to provide custom templates or modifications of existing ones. This was somehow inspired by Kristoffer Lawson "templating engine" in his Spindle web framework, which is solely based on Tcl namespaces, however.

  1. … 1 more file in changeset.