[Distutils] [zc.buildout] building a testrunner

Jim Fulton jim at zope.com
Tue Jul 22 17:05:56 CEST 2008


My guess is that you forgot to list lots of your dependencies in your  
setup.py file.

Look at the generated test script.  You should see all required eggs  
listed in the Python path.

You might find it useful to also add an "interpreter" part:

   [buildout]
   parts = test py
   ...

   [py]
   recipe = zc.recipe.egg
   eggs = twidddler
   interpreter = py

Then, after running the buildout, you'll be able to:

   bin/py

and get a Python prompt with twiddler and it's dependencies in the  
Python path. This makes it easy play with your code.

Jim

On Jul 22, 2008, at 10:24 AM, Chris Withers wrote:

> Hi All,
>
> I've just finished making one of my python libraries into something  
> that setuptools is happy with:
>
> https://secure.simplistix.co.uk/svn/Simplistix/twiddler/trunk/
>
> I'm trying to add a short buildout.cfg next to the setup.py so I can  
> check this project out, run bootstrap.py, run buildout and then do:
>
> C:\LocalSVN\twiddler> bin\test
>
> ...to run the tests.
>
> Here's the buildout.cfg I currently have:
>
> [buildout]
> develop = .
> parts = test
>
> [test]
> recipe = zc.recipe.testrunner
> eggs = twiddler
>
> Now, if I do:
>
> C:\LocalSVN\twiddler> bin\test -m twiddler
>
> ...I get the results I'd expect.
>
> However, if I do:
>
> C:\LocalSVN\twiddler> bin\test
>
> I get the following unexpected output:
>
> Test-module import failures:
> Module: eggs.setuptools-0.6c5- 
> py2.4.egg.setuptools.tests.test_resources
> ImportError: No module named eggs.setuptools-0.6c5- 
> py2.4.egg.setuptools.tests.te
> st_resources
> Module: eggs.setuptools-0.6c8- 
> py2.4.egg.setuptools.tests.test_packageindex
> ImportError: No module named eggs.setuptools-0.6c8- 
> py2.4.egg.setuptools.tests.te
> st_packageindex
> Module: eggs.setuptools-0.6c8- 
> py2.4.egg.setuptools.tests.test_resources
> ImportError: No module named eggs.setuptools-0.6c8- 
> py2.4.egg.setuptools.tests.te
> st_resources
> Module: eggs.zc.buildout-1.0.7_dev-py2.4.egg.zc.buildout.tests
> ImportError: No module named eggs.zc.buildout-1.0.7_dev- 
> py2.4.egg.zc.buildout.te
> sts
> Module: eggs.zc.buildout-1.1.0-py2.4.egg.zc.buildout.tests
> ImportError: No module named eggs.zc.buildout-1.1.0- 
> py2.4.egg.zc.buildout.tests
> Module: eggs.zc.recipe.egg-1.1.0-py2.4.egg.zc.recipe.egg.tests
> ImportError: No module named eggs.zc.recipe.egg-1.1.0- 
> py2.4.egg.zc.recipe.egg.te
> sts
> Module: eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.common.tests.te
> st_idatetime
> ImportError: No module named eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.inte
> rface.common.tests.test_idatetime
> Module: eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.common.tests.te
> st_import_interfaces
> ImportError: No module named eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.inte
> rface.common.tests.test_import_interfaces
> Module: eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.tests.test_adap
> ter
> ImportError: No module named eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.inte
> rface.tests.test_adapter
> Module: eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.tests.test_advi
> ce
> ImportError: No module named eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.inte
> rface.tests.test_advice
> Module: eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.tests.test_decl
> arations
> ImportError: No module named eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.inte
> rface.tests.test_declarations
> Module: eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.tests.test_docu
> ment
> ImportError: No module named eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.inte
> rface.tests.test_document
> Module: eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.tests.test_elem
> ent
> ImportError: No module named eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.inte
> rface.tests.test_element
> Module: eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.tests.test_inte
> rface
> ImportError: No module named eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.inte
> rface.tests.test_interface
> Module: eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.tests.test_odd_
> declarations
> ImportError: No module named eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.inte
> rface.tests.test_odd_declarations
> Module: eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.tests.test_sort
> ing
> ImportError: No module named eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.inte
> rface.tests.test_sorting
> Module: eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.tests.test_veri
> fy
> ImportError: No module named eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.inte
> rface.tests.test_verify
> Module: eggs.zope.testing-3.6.0-py2.4.egg.zope.testing.tests
> ImportError: No module named eggs.zope.testing-3.6.0- 
> py2.4.egg.zope.testing.test
> s
> Module: eggs.zope.testing-3.6.0- 
> py2.4.egg.zope.testing.testrunner.tests
> ImportError: No module named eggs.zope.testing-3.6.0- 
> py2.4.egg.zope.testing.test
> runner.tests
> Running zope.testing.testrunner.layer.UnitTests tests:
>  Set up zope.testing.testrunner.layer.UnitTests in 0.000 seconds.
> <snip expected output>
> Test-modules with import problems:
>  eggs.setuptools-0.6c5-py2.4.egg.setuptools.tests.test_resources
>  eggs.setuptools-0.6c8-py2.4.egg.setuptools.tests.test_packageindex
>  eggs.setuptools-0.6c8-py2.4.egg.setuptools.tests.test_resources
>  eggs.zc.buildout-1.0.7_dev-py2.4.egg.zc.buildout.tests
>  eggs.zc.buildout-1.1.0-py2.4.egg.zc.buildout.tests
>  eggs.zc.recipe.egg-1.1.0-py2.4.egg.zc.recipe.egg.tests
> eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.common.tests.test_ida
> tetime
> eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.common.tests.test_imp
> ort_interfaces
> eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.tests.test_adapter
> eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.tests.test_advice
> eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.tests.test_declaratio
> ns
> eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.tests.test_document
> eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.tests.test_element
> eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.tests.test_interface
> eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.tests.test_odd_declar
> ations
> eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.tests.test_sorting
> eggs.zope.interface-3.4.1-py2.4- 
> win32.egg.zope.interface.tests.test_verify
>  eggs.zope.testing-3.6.0-py2.4.egg.zope.testing.tests
>  eggs.zope.testing-3.6.0-py2.4.egg.zope.testing.testrunner.tests
>
> How come?
>
> cheers,
>
> Chris
>
> -- 
> Simplistix - Content Management, Zope & Python Consulting
>           - http://www.simplistix.co.uk
> _______________________________________________
> Distutils-SIG maillist  -  Distutils-SIG at python.org
> http://mail.python.org/mailman/listinfo/distutils-sig

--
Jim Fulton
Zope Corporation




More information about the Distutils-SIG mailing list