diff options
Diffstat (limited to 'rest_framework/runtests/runcoverage.py')
| -rwxr-xr-x | rest_framework/runtests/runcoverage.py | 78 | 
1 files changed, 0 insertions, 78 deletions
| diff --git a/rest_framework/runtests/runcoverage.py b/rest_framework/runtests/runcoverage.py deleted file mode 100755 index ce11b213..00000000 --- a/rest_framework/runtests/runcoverage.py +++ /dev/null @@ -1,78 +0,0 @@ -#!/usr/bin/env python -""" -Useful tool to run the test suite for rest_framework and generate a coverage report. -""" - -# http://ericholscher.com/blog/2009/jun/29/enable-setuppy-test-your-django-apps/ -# http://www.travisswicegood.com/2010/01/17/django-virtualenv-pip-and-fabric/ -# http://code.djangoproject.com/svn/django/trunk/tests/runtests.py -import os -import sys - -# fix sys path so we don't need to setup PYTHONPATH -sys.path.append(os.path.join(os.path.dirname(__file__), "../..")) -os.environ['DJANGO_SETTINGS_MODULE'] = 'rest_framework.runtests.settings' - -from coverage import coverage - - -def main(): -    """Run the tests for rest_framework and generate a coverage report.""" - -    cov = coverage() -    cov.erase() -    cov.start() - -    from django.conf import settings -    from django.test.utils import get_runner -    TestRunner = get_runner(settings) - -    if hasattr(TestRunner, 'func_name'): -        # Pre 1.2 test runners were just functions, -        # and did not support the 'failfast' option. -        import warnings -        warnings.warn( -            'Function-based test runners are deprecated. Test runners should be classes with a run_tests() method.', -            DeprecationWarning -        ) -        failures = TestRunner(['tests']) -    else: -        test_runner = TestRunner() -        failures = test_runner.run_tests(['tests']) -    cov.stop() - -    # Discover the list of all modules that we should test coverage for -    import rest_framework - -    project_dir = os.path.dirname(rest_framework.__file__) -    cov_files = [] - -    for (path, dirs, files) in os.walk(project_dir): -        # Drop tests and runtests directories from the test coverage report -        if os.path.basename(path) in ['tests', 'runtests', 'migrations']: -            continue - -        # Drop the compat and six modules from coverage, since we're not interested in the coverage -        # of modules which are specifically for resolving environment dependant imports. -        # (Because we'll end up getting different coverage reports for it for each environment) -        if 'compat.py' in files: -            files.remove('compat.py') - -        if 'six.py' in files: -            files.remove('six.py') - -        # Same applies to template tags module. -        # This module has to include branching on Django versions, -        # so it's never possible for it to have full coverage. -        if 'rest_framework.py' in files: -            files.remove('rest_framework.py') - -        cov_files.extend([os.path.join(path, file) for file in files if file.endswith('.py')]) - -    cov.report(cov_files) -    if '--html' in sys.argv: -        cov.html_report(cov_files, directory='coverage') -    sys.exit(failures) - -if __name__ == '__main__': -    main() | 
