Refer to the pip development documentation - it applies equally to virtualenv, except that virtualenv issues should filed on the virtualenv repo at GitHub.
Virtualenv’s release schedule is tied to pip’s – each time there’s a new pip release, there will be a new virtualenv release that bundles the new version of pip.
Files in the virtualenv_embedded/ subdirectory are embedded into virtualenv.py itself as base64-encoded strings (in order to support single-file use of virtualenv.py without installing it). If your patch changes any file in virtualenv_embedded/, run bin/rebuild-script.py to update the embedded version of that file in virtualenv.py; commit that and submit it as part of your patch / pull request.
Virtualenv’s test suite is small and not yet at all comprehensive, but we aim to grow it.
The easy way to run tests (handles test dependencies automatically):
$ python setup.py test
If you want to run only a selection of the tests, you’ll need to run them directly with pytest instead. Create a virtualenv, and install required packages:
$ pip install pytest mock
Run pytest:
$ pytest
Or select just a single test file to run:
$ pytest tests/test_virtualenv
virtualenv is a successor to workingenv, and an extension of virtual-python.
It was written by Ian Bicking, sponsored by the Open Planning Project and is now maintained by a group of developers. It is licensed under an MIT-style permissive license.