[lift-devel] test suite names and packages

Stefan Lang langstefan at gmx.at
Sun Feb 4 22:23:57 UTC 2007


Hi,

lift currently interns all test suite names in the lift
package. What is the rationale behind this? Was this a
conscious design decision or incidentally?

Currently, if I have package TEST-A with test suite FOO:

  (in-package "TEST-A")

  (deftestsuite foo () ...)

and package TEST-B also with test suite FOO:

  (in-package "TEST-B")

  (deftestsuite foo () ...)

the second definition redefines the first, because both
are interned as LIFT::FOO. This runs somewhat counter to
the package system. Intuiton, based on defclass, would
tell me it should define the suites named TEST-A::FOO and
TEST-B::FOO, peacefully coexisting.

Note that I have hardly used lift. I'm currently evaluating
test frameworks, so perhaps I'm missing something crucial.

Anyway, the attached patch would change lift so that
test suite names and test names are not interned in the lift
package, making deftestsuite behave more like defclass
wrt to packages and allowing suites with the same name
in different packages to coexist.

The format control ~A in list-tests is changed to ~S
so that package names are printed to disambiguate where
necessary.

It also changes the three tests that checked that test
names are interned in the lift package.

Thanks,
  Stefan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: packages.diff
Type: text/x-diff
Size: 5435 bytes
Desc: not available
URL: <https://mailman.common-lisp.net/pipermail/lift-devel/attachments/20070204/54a6560c/attachment.diff>


More information about the lift-devel mailing list