Running and writing tests

Note

should include seeAlso to virtualenv

This section covers the documentation about the tests for the LEAP Client code. All patches should have tests for them ...

Testing dependencies

have a look at pkg/test-requirements.pip The ./run_tests.sh command should install all of them in your virtualenv for you.

If you prefer to install them system wide, this should do in a debian system:

$ apt-get install python-nose python-mock python-coverage

Running tests

There is a convenience script at ./run_tests.sh

If you want to run specific tests, pass the (sub)module to nose:

$ nosetests leap.util

or:

$ nosetests leap.util.tests.test_leap_argparse

Hint: colorized output

Install rednose locally, export the NOSE_REDNOSE variable, and give your eyes a rest :):

(leap_client)% pip install rednose
(leap_client)% export NOSE_REDNOSE=1

Testing all the supported python versions

For running testsuite against all the supported python versions (currently 2.6 and 2.7), run:

% tox -v

Coverage reports

Pass the -c flat to the run_tests.sh script:

$ run_tests.sh -c

Using coverage it will generate beautiful html reports that you can access pointing your browser to docs/covhtml/index.html

Note

The coverage reports will not be generated if all tests are not passing.