Discussion:
[Zope3-dev] eggsplosion and tests
Martijn Faassen
2007-10-10 14:47:35 UTC
Permalink
Hi there,

I just tried something Stephan also tried, but deserves another topic. I
just wrote a simple script that takes all the eggs grok uses and tries
to run their tests. This is to see whether our pile of eggs isn't broken
in some way.

I get a ton of errors. Mostly a ton of import errors, but other things
as well, probably mostly due to version skew where one release assumes
it can do things with APIs in another release that another release
doesn't allow yet or not anymore.

And then the whole testrunner bails out somewhere in the middle:

Traceback (most recent call last):
File "/home/faassen/buildout/grok-0.10/testbuildout/bin/test", line
115, in ?
zope.testing.testrunner.run((['--tests-pattern', '^f?tests$',
'-v']) + [
File
"/home/faassen/buildout-eggs/tmpRHS1Xv/zope.testing-3.4-py2.4.egg/zope/testing/testrunner.py",
line 271, in run
File
"/home/faassen/buildout-eggs/tmpRHS1Xv/zope.testing-3.4-py2.4.egg/zope/testing/testrunner.py",
line 448, in run_with_options
File
"/home/faassen/buildout-eggs/tmpRHS1Xv/zope.testing-3.4-py2.4.egg/zope/testing/testrunner.py",
line 661, in resume_tests
zope.testing.testrunner.SubprocessError

We'll have a lot of work cut out for us to fix this.

This is one point where I can see an evolving index will help. The
trouble is we ended up starting with such a messed up state in the first
place. :(

Regards,

Martijn
Jim Fulton
2007-10-10 15:16:03 UTC
Permalink
Post by Martijn Faassen
Hi there,
I just tried something Stephan also tried, but deserves another
topic. I just wrote a simple script that takes all the eggs grok
uses and tries to run their tests. This is to see whether our pile
of eggs isn't broken in some way.
I get a ton of errors. Mostly a ton of import errors, but other
things as well, probably mostly due to version skew where one
release assumes it can do things with APIs in another release that
another release doesn't allow yet or not anymore.
File "/home/faassen/buildout/grok-0.10/testbuildout/bin/test",
line 115, in ?
zope.testing.testrunner.run((['--tests-pattern', '^f?tests$', '-
v']) + [
File "/home/faassen/buildout-eggs/tmpRHS1Xv/zope.testing-3.4-
py2.4.egg/zope/testing/testrunner.py", line 271, in run
File "/home/faassen/buildout-eggs/tmpRHS1Xv/zope.testing-3.4-
py2.4.egg/zope/testing/testrunner.py", line 448, in run_with_options
File "/home/faassen/buildout-eggs/tmpRHS1Xv/zope.testing-3.4-
py2.4.egg/zope/testing/testrunner.py", line 661, in resume_tests
zope.testing.testrunner.SubprocessError
We'll have a lot of work cut out for us to fix this.
This is one point where I can see an evolving index will help. The
trouble is we ended up starting with such a messed up state in the
first place. :(
2 minor notes:

- zc.buildout and some recipes tests don't run properly outside of
their buildouts. This is because the test setup leverages aspects
iof the buildout, especially the presense of the source to build
develop eggs needed for the tests. This almost certainly can and
should be fixed, but I consider it a low priority in relation to
other priorities and limited resources.

- ZODB packaging, which is waaaaaay too complicated for hysterical
reasons, fails to include some files needed for testing. This makes
it impossible to run the tests outside of it;s development
environment. This too can and should be fixed. I consider this a
higher priority but won't have time to deal with it for a while. I
think ZODB's setup should be rewritten from scratch. Much of the
complexity arises from working around limitations in distutils, some
of which have been fixed. Other complexity probably arises from a
stubborn desire not to require setuptools for ZODB. Anyway, if
someone wants to ehlp with the setup script, it would be appreciated,
Otherwise, I'll get to it eventually. In the mean time, I suggest
not running the ZODB tests.

Jim

--
Jim Fulton
Zope Corporation

Loading...