.. _tests: 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.