tests

Clone Tools
  • last updated 18 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
- library/nx/nx.tcl: Pulling out method contracts (pre- and postconditions) from NX for the time being. Corresponding tests have been commented out or, if applicable, turned into XOTcl2-specific tests.

  1. … 1 more file in changeset.
- improve code documentation - add some more tests to the regression test suite

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

  1. … 1 more file in changeset.
- generic/nsf.c: Use GetAllClassMixinsOf() instead of TransitiveSubClasses() when invalidating per-class caches. Added two tests.

  1. … 1 more file in changeset.
nsf.c: - invalidate paramter caches of subclasses on NsfParameterInvalidateClassCacheCmd unless during shutdown. Otherwise some classes might not become aware of properties added later to superclasses. - extended regression test

  1. … 4 more files in changeset.
nsf.c: - fix case, where NsfDStringPrintf() failed (when print llength including \0 was 1 byte longer than print buffer) - make sure, that the list kept for the cached parameter is just built from unshared objects; otherwise Tcl append will abort

nx.tcl:

- new package "nx::volatile"

- don't define configure parameter "-volatile" per default;

use "package req nx::volatile" instead

- don't define per method "volatile" per default;

use "::nsf::method::require ::nx::Object volatile" instead

- get rid of -volatile in nx.tcl and serializer

- update/extend regression test

  1. … 7 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. … 3 more files in changeset.
nx::traits: - handle ensemble methods correctly (use full method path for resolution) - add new regression tests for traits

  1. … 1 more file in changeset.
- raise an error, when an ensemble methods redefined a plain method

  1. … 2 more files in changeset.
- add incr/decr refcount for callInfoObj in unknown handling - deactivated suspicious assert() in NsfMethodNamePath()

  1. … 1 more file in changeset.
nsf.c: - change name of enumeratorConverterEntry to Nsf_EnumeratorConverterEntry, move it with NSF_ARG_* flags to tcl.h to make it available in derived modules using the converter - Added editor hints for a more uniform appearance

  1. … 30 more files in changeset.
- nx.tcl: Throw error exceptions using "return -code error", to exclude the unevaluated error cmd statement from the trace message

  1. … 1 more file in changeset.
- fix bug in interaction between uplevel method from tcl procs

  1. … 2 more files in changeset.
-nsf.c: - fix bug in interaction between uplevel method and interceptor transparency - extend regression test

  1. … 2 more files in changeset.
nx: - allow copy of objects with required arguments - use ::nsf::object::alloc in "copy" method - don't depend on method "trace", use directdispatch instead - remove method "-noinit" (nsf::object::alloc makes it obsolete) - extend regression test

  1. … 2 more files in changeset.
nsf.c: - new command ::nsf::object::alloc /class/ /obj/ ?/script/? alloc an object and execute script in the context. Can be used to regenerate an object in a old state.

serializer:

- fixed loading of objects with required data in the blueprint

(many thanks for david hopfmueller for reporting this)

- make use of nsf::object::alloc (1 command instead of 1 create + 2 evals)

- these changes imprived laading time of blueprint by about 25%

for OpenACS+xowiki

  1. … 9 more files in changeset.
- made linearization monotonic (for multiple inheritance) via single-inheritance linearization merging while preserving overall linearization rules - added flag NSF_LINEARIZER_TRACE - extended regression test

    • -0
    • +127
    ./linearization.test
  1. … 4 more files in changeset.
- nsf: added switch "-checkalways" to nsf::method::create - nx: added switch "checkalways" to "method" and "object method" - extended regression test

  1. … 6 more files in changeset.
Realized enter traces for method procs; leave traces remain TBD

  1. … 1 more file in changeset.
Explored assertion support from an NX perspective, by reviewing the current implementation against Eiffel's RAC; along the way, I made ::nsf::current more robust when being used in assertions

  1. … 1 more file in changeset.
- don't call postcondition, when the command/invariant have returned already an error

  1. … 2 more files in changeset.
nsf.c - fixed a bug where turning on assertions could swallow result-codes - extended regression test

  1. … 2 more files in changeset.
mongodb: - integrated configuration of mongodb into toplevel configfile option: --with-mongodb=MONGO_INCLUDE_DIR,MONGO_LIB_DIR - added regression test files for mongodb support (lowlevel (tcl-only) and highlevel (nx based oo support)) - integrated mongodb-testfiles with "make test" - reduced verbosity of nx-mongo.tcl (added verbosty variable)

  1. … 21 more files in changeset.
- fix typo

nsf.c: - dont't use the default of a invocation parameter in "configure" when the object is already initialized. The default is in general only used when the parameter is not specified. We do not want e.g. superclass to be reset to ::nx::Object, when configure is called on a class without arguments. - extended regression test

  1. … 2 more files in changeset.
- make version management simpler and freeze XOTcl 1.* versions In order to avoid bad interactions between XOTcl 1.0 and XOTcl 2.0 the version dependency in 1.0 where changed to "package require -exact ... 1.0" where possible, and the provides where upgraded to 1.0 in most cases

  1. … 66 more files in changeset.
Fix the implementation of NsfInterpObjCmd() which crashed previously due to the broken resolution of the child interpreter

  1. … 1 more file in changeset.
tcl_platform(threaded) is not present as array element in non-threaded builts

- document tricky trace script setting in regression test

- use tcl8.5 commands instead of 8.4 idioms

  1. … 4 more files in changeset.