app/django/contrib/gis/tests/utils.py
author Sverre Rabbelier <srabbelier@gmail.com>
Tue, 03 Mar 2009 23:27:39 +0000
changeset 1614 797f5ae462e7
parent 323 ff1a9aa48cfd
permissions -rw-r--r--
Convert getForFields back to the Query API and add tests This is possible now that it supports the 'IN' operator. Added tests to make sure there are no regressions. Patch by: Sverre Rabbelier

from django.conf import settings

# function that will pass a test.
def pass_test(*args): return

def no_backend(test_func, backend):
    "Use this decorator to disable test on specified backend."
    if settings.DATABASE_ENGINE == backend:
        return pass_test
    else:
        return test_func

# Decorators to disable entire test functions for specific
# spatial backends.
def no_oracle(func): return no_backend(func, 'oracle')
def no_postgis(func): return no_backend(func, 'postgresql_psycopg2')
def no_mysql(func): return no_backend(func, 'mysql')

# Shortcut booleans to omit only portions of tests.
oracle  = settings.DATABASE_ENGINE == 'oracle'
postgis = settings.DATABASE_ENGINE == 'postgresql_psycopg2' 
mysql   = settings.DATABASE_ENGINE == 'mysql'