[TIP] tox-1.2: some bug fixes for the virtualenv-based generic test runner

holger krekel holger at merlinux.eu
Fri Nov 11 07:26:37 PST 2011


Hey Michael,

On Fri, Nov 11, 2011 at 12:34 +0000, Michael Foord wrote:
> On 10 Nov 2011, at 18:44, holger krekel wrote:
> 
> > tox 1.2: the virtualenv-based test run automatizer
> > ===========================================================================
> > 
> > I am happy to announce tox 1.2, now using and depending on the latest
> > virtualenv code and containing some bug fixes.  TOX automates tedious
> > test activities driven from a simple ``tox.ini`` file, including:
> > 
> 
> 
> Hey Holger,
> 
> When I run tox 1.2 with Python 2.7 my Python 3 (3.1 / 3.2) tests no longer run - they are picking up the wrong virtualenv.py. 

Just to be sure, which virtualenv version is this?

On my OSX 10.6, creating the py31 env work nicely like this:

    (0)hpk at noco:~/p/tox$ tox -e py31 tests/test_config.py 
    ...
    __________________________ [tox testenv:py31] ______________________________
    [TOX] ***creating virtualenv py31
    [TOX] /Users/hpk/p/tox/.tox$ /Library/Frameworks/Python.framework/Versions/3.1/bin/python3.1 /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/virtualenv-1.6.4-py2.7.egg/virtualenv.py --no-site-packages py31 >py31/log/0.log

    ...

Only difference i see is your "virtualenv.py" resides directly in site-packages. 
Odd?!

holger
 
> _________________________ [tox testenv:py32] __________________________
> [TOX] ***recreating virtualenv py32 (configchange/incomplete install detected)
> [TOX] /compile/mock/.tox$ /Library/Frameworks/Python.framework/Versions/3.2/bin/python3.2 /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/virtualenv.py --no-site-packages py32 >py32/log/0.log
> [TOX] ERROR: invocation failed, logfile: /compile/mock/.tox/py32/log/0.log
> [TOX] ERROR: /compile/mock/.tox$ /Library/Frameworks/Python.framework/Versions/3.2/bin/python3.2 /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/virtualenv.py --no-site-packages py32 >py32/log/0.log
> New python executable in py32/bin/python
> Traceback (most recent call last):
>   File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/virtualenv.py", line 1952, in <module>
>     main()
>   File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/virtualenv.py", line 810, in main
>     never_download=options.never_download)
>   File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/virtualenv.py", line 907, in create_environment
>     search_dirs=search_dirs, never_download=never_download)
>   File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/virtualenv.py", line 608, in install_distribute
>     search_dirs=search_dirs, never_download=never_download)
>   File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/virtualenv.py", line 493, in _install_req
>     import pkg_resources
>   File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pkg_resources.py", line 45
>     def _bypass_ensure_directory(name, mode=0777):
>                                                ^
> SyntaxError: invalid token
> 
> [TOX] ERROR: InvocationError: /Library/Frameworks/Python.framework/Versions/3.2/bin/python3.2 /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/virtualenv.py --no-site-packages py32 (see /compile/mock/.tox/py32/log/0.log)
> 
> 
> It works fine with Python 2.6 (so not really a problem), but it's odd. Any ideas? (Mac OS X)
> 
> All the best,
> 
> Michael Foord
> 
> 
> 
> > * creation and management of different virtualenv environments with
> >  different Python interpreters
> > * packaging and installing your package into each of them
> > * running your test tool of choice, be it nose, py.test or unittest2 or
> >  other tools such as "sphinx" doc checks
> > * testing dev packages against each other without needing to upload to PyPI
> > 
> > It works well on virtually all Python interpreters that support virtualenv.
> > 
> > Docs and examples are at:
> > 
> >    http://tox.testrun.org
> > 
> > Installation:
> > 
> >    pip install -U tox
> > 
> > code hosting and issue tracking on bitbucket:
> > 
> >    http://bitbucket.org/hpk42/tox
> > 
> > best,
> > Holger Krekel
> > 
> > 1.2 compared to 1.1
> > ---------------------
> > 
> > - remove the virtualenv.py that was distributed with tox and depend
> >  on virtualenv-1.6.4 (possible now since the latter fixes a few bugs
> >  that the inling tried to work around)
> > - fix issue10: work around UnicodeDecodeError when inokving pip (thanks
> >  Marc Abramowitz)
> > - fix a problem with parsing {posargs} in tox commands (spotted by goodwill)
> > - fix the warning check for commands to be installed in testevironment
> >  (thanks Michael Foord for reporting)
> > 
> > _______________________________________________
> > testing-in-python mailing list
> > testing-in-python at lists.idyll.org
> > http://lists.idyll.org/listinfo/testing-in-python
> > 
> 
> 
> --
> http://www.voidspace.org.uk/
> 
> 
> May you do good and not evil
> May you find forgiveness for yourself and forgive others
> May you share freely, never taking more than you give.
> -- the sqlite blessing 
> http://www.sqlite.org/different.html
> 
> 
> 
> 
> 



More information about the testing-in-python mailing list