aboutsummaryrefslogtreecommitdiffstats
path: root/runtests.py
diff options
context:
space:
mode:
Diffstat (limited to 'runtests.py')
-rw-r--r--runtests.py50
1 files changed, 50 insertions, 0 deletions
diff --git a/runtests.py b/runtests.py
new file mode 100644
index 0000000..b8abc5d
--- /dev/null
+++ b/runtests.py
@@ -0,0 +1,50 @@
+#!/usr/bin/env python
+import sys
+from os.path import dirname, abspath
+from optparse import OptionParser
+
+from django.conf import settings
+
+if not settings.configured:
+ settings.configure(
+ DATABASE_ENGINE='sqlite3',
+ # HACK: this fixes our threaded runserver remote tests
+ # DATABASE_NAME='test_sentry',
+ # TEST_DATABASE_NAME='test_sentry',
+ INSTALLED_APPS=[
+ 'django.contrib.auth',
+ 'django.contrib.admin',
+ 'django.contrib.contenttypes',
+ 'django.contrib.sessions',
+ 'django.contrib.sites',
+
+ 'debug_toolbar',
+
+ 'tests',
+ ],
+ ROOT_URLCONF='',
+ DEBUG=False,
+ SITE_ID=1,
+ )
+
+from django.test.simple import run_tests
+
+def runtests(*test_args, **kwargs):
+ if 'south' in settings.INSTALLED_APPS:
+ from south.management.commands import patch_for_test_db_setup
+ patch_for_test_db_setup()
+
+ if not test_args:
+ test_args = ['tests']
+ parent = dirname(abspath(__file__))
+ sys.path.insert(0, parent)
+ failures = run_tests(test_args, verbosity=kwargs.get('verbosity', 1), interactive=kwargs.get('interactive', False), failfast=kwargs.get('failfast'))
+ sys.exit(failures)
+
+if __name__ == '__main__':
+ parser = OptionParser()
+ parser.add_option('--failfast', action='store_true', default=False, dest='failfast')
+
+ (options, args) = parser.parse_args()
+
+ runtests(failfast=options.failfast, *args) \ No newline at end of file