Django

Code

Changeset 5296

Show
Ignore:
Timestamp:
05/19/07 22:51:21 (1 year ago)
Author:
russellm
Message:

Modified the django system test script to search for tests in the contrib apps.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/trunk/tests/runtests.py

    r4628 r5296  
    44import unittest 
    55 
     6import django.contrib as contrib 
     7CONTRIB_DIR_NAME = 'django.contrib' 
    68MODEL_TESTS_DIR_NAME = 'modeltests' 
    79REGRESSION_TESTS_DIR_NAME = 'regressiontests' 
     10 
    811TEST_DATABASE_NAME = 'django_test_db' 
    912TEST_TEMPLATE_DIR = 'templates' 
    1013 
     14CONTRIB_DIR = os.path.dirname(contrib.__file__) 
    1115MODEL_TEST_DIR = os.path.join(os.path.dirname(__file__), MODEL_TESTS_DIR_NAME) 
    1216REGRESSION_TEST_DIR = os.path.join(os.path.dirname(__file__), REGRESSION_TESTS_DIR_NAME) 
     
    2529def get_test_models(): 
    2630    models = [] 
    27     for loc, dirpath in (MODEL_TESTS_DIR_NAME, MODEL_TEST_DIR), (REGRESSION_TESTS_DIR_NAME, REGRESSION_TEST_DIR)
     31    for loc, dirpath in (MODEL_TESTS_DIR_NAME, MODEL_TEST_DIR), (REGRESSION_TESTS_DIR_NAME, REGRESSION_TEST_DIR), (CONTRIB_DIR_NAME, CONTRIB_DIR)
    2832        for f in os.listdir(dirpath): 
    2933            if f.startswith('__init__') or f.startswith('.') or f.startswith('sql') or f.startswith('invalid'): 
     
    3438def get_invalid_models(): 
    3539    models = [] 
    36     for loc, dirpath in (MODEL_TESTS_DIR_NAME, MODEL_TEST_DIR), (REGRESSION_TESTS_DIR_NAME, REGRESSION_TEST_DIR)
     40    for loc, dirpath in (MODEL_TESTS_DIR_NAME, MODEL_TEST_DIR), (REGRESSION_TESTS_DIR_NAME, REGRESSION_TEST_DIR), (CONTRIB_DIR_NAME, CONTRIB_DIR)
    3741        for f in os.listdir(dirpath): 
    3842            if f.startswith('__init__') or f.startswith('.') or f.startswith('sql'): 
     
    110114                    print "Importing model %s" % model_name 
    111115                mod = load_app(model_label) 
    112                 settings.INSTALLED_APPS.append(model_label) 
    113                 test_models.append(mod) 
     116                if mod: 
     117                    if model_label not in settings.INSTALLED_APPS: 
     118                        settings.INSTALLED_APPS.append(model_label) 
     119                    test_models.append(mod) 
    114120        except Exception, e: 
    115121            sys.stderr.write("Error while importing %s:" % model_name + ''.join(traceback.format_exception(*sys.exc_info())[1:]))