diff options
-rw-r--r-- | .gitignore | 3 | ||||
-rw-r--r-- | .hgignore | 3 | ||||
-rw-r--r-- | run_tests.py | 43 | ||||
-rw-r--r-- | tox.ini | 32 |
4 files changed, 81 insertions, 0 deletions
@@ -6,3 +6,6 @@ dist/ distribute*.tar.gz distribute*.egg + +.tox/ +.coverage @@ -6,3 +6,6 @@ dist/ rsa.egg-info/ distribute-0.6.* doc/_build/ +.tox/ +.coverage +.idea/ diff --git a/run_tests.py b/run_tests.py new file mode 100644 index 0000000..e0f2490 --- /dev/null +++ b/run_tests.py @@ -0,0 +1,43 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import os +import sys +import unittest2 as unittest + +current_path = os.path.abspath(os.path.dirname(__file__)) +tests_path = os.path.join(current_path, 'tests') +sys.path[0:0] = [ + current_path, + tests_path, +] + +all_tests = [f[:-3] for f in os.listdir(tests_path) + if f.startswith('test_') and f.endswith(".py")] + +def get_suite(tests): + tests = sorted(tests) + suite = unittest.TestSuite() + loader = unittest.TestLoader() + for test in tests: + suite.addTest(loader.loadTestsFromName(test)) + return suite + +if __name__ == '__main__': + """ + To run all tests: + $ python run_tests.py + To run a single test: + $ python run_tests.py app + To run a couple of tests: + $ python run_tests.py app config sessions + To run code coverage: + $ coverage run run_tests.py + $ coverage report -m + """ + tests = sys.argv[1:] + if not tests: + tests = all_tests + tests = ['%s' % t for t in tests] + suite = get_suite(tests) + unittest.TextTestRunner(verbosity=1).run(suite) @@ -0,0 +1,32 @@ +[tox] +envlist = py25,py26,py27,py32 #,pypy + +[testenv] +commands=coverage erase + coverage run run_tests.py + coverage report -m + #coverage html -d htmlcov + +[testenv:py25] +deps=pyasn1 >=0.0.13 + coverage >=3.5 + unittest2 + +[testenv:py26] +deps=pyasn1 >=0.0.13 + coverage >=3.5 + unittest2 + +[testenv:py27] +deps=pyasn1 >=0.0.13 + coverage >=3.5 + unittest2 + +[testenv:py32] +deps=coverage >= 3.5 + unittest2py3k + +[testenv:pypy] +deps=pyasn1 >=0.0.13 + coverage >= 3.5 + unittest2 |