PageRenderTime 38ms CodeModel.GetById 28ms RepoModel.GetById 0ms app.codeStats 0ms

/tests/runtests.py

http://django-evolution.googlecode.com/
Python | 62 lines | 43 code | 18 blank | 1 comment | 6 complexity | a6bddeb7a43e9d9dbd55c3ef485e8e18 MD5 | raw file
Possible License(s): BSD-3-Clause
  1. #!/usr/bin/env python
  2. import nose
  3. import os
  4. import sys
  5. def run_tests(verbosity=1, interactive=False):
  6. from django.conf import settings
  7. from django.core import management
  8. from django.test.utils import setup_test_environment, \
  9. teardown_test_environment
  10. from django_evolution import is_multi_db
  11. setup_test_environment()
  12. settings.DEBUG = False
  13. old_db_names = []
  14. if is_multi_db():
  15. from django.db import connections
  16. for alias in connections:
  17. connection = connections[alias]
  18. old_db_names.append((connection, connection.settings_dict['NAME']))
  19. connection.creation.create_test_db(verbosity,
  20. autoclobber=not interactive)
  21. else:
  22. from django.db import connection
  23. old_db_names.append((connection, settings.DATABASE_NAME))
  24. connection.creation.create_test_db(verbosity,
  25. autoclobber=not interactive)
  26. management.call_command('syncdb', verbosity=verbosity,
  27. interactive=interactive)
  28. nose_argv = ['runtests.py', '-v',
  29. '--with-coverage',
  30. '--with-doctest',
  31. '--doctest-extension=.txt',
  32. '--cover-package=django_evolution',
  33. '--match=tests[\/]*.py']
  34. if len(sys.argv) > 2:
  35. nose_argv += sys.argv[2:]
  36. nose.run(argv=nose_argv)
  37. for connection, name in old_db_names:
  38. connection.creation.destroy_test_db(name, verbosity=0)
  39. teardown_test_environment()
  40. if __name__ == "__main__":
  41. os.chdir(os.path.join(os.path.dirname(__file__), ".."))
  42. sys.path.insert(0, os.getcwd())
  43. os.environ['DJANGO_SETTINGS_MODULE'] = "tests.settings"
  44. run_tests()