From b4e069fab445986bcd0c35b350b0f3e2cafeffc7 Mon Sep 17 00:00:00 2001 From: Alex Gaynor Date: Fri, 19 Jun 2009 01:09:21 +0000 Subject: [PATCH] [soc2009/multidb] Fixed running the admin_scripts tests under sqlite without having DATABASE_NAME set git-svn-id: http://code.djangoproject.com/svn/django/branches/soc2009/multidb@11078 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- django/db/__init__.py | 2 +- tests/regressiontests/admin_scripts/tests.py | 16 +++++++--------- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/django/db/__init__.py b/django/db/__init__.py index 8e50dd4206..18a20fbef6 100644 --- a/django/db/__init__.py +++ b/django/db/__init__.py @@ -38,7 +38,7 @@ connections = ConnectionHandler(settings.DATABASES) # we load all these up for backwards compatibility, you should use # connections['default'] instead. connection = connections['default'] -backend = load_backend(settings.DATABASE_ENGINE) +backend = load_backend(connection.settings_dict['DATABASE_ENGINE']) DatabaseError = backend.DatabaseError IntegrityError = backend.IntegrityError diff --git a/tests/regressiontests/admin_scripts/tests.py b/tests/regressiontests/admin_scripts/tests.py index e67126e9a7..8678ee0c64 100644 --- a/tests/regressiontests/admin_scripts/tests.py +++ b/tests/regressiontests/admin_scripts/tests.py @@ -23,17 +23,15 @@ class AdminScriptTestCase(unittest.TestCase): settings_file = open(os.path.join(test_dir, filename), 'w') settings_file.write('# Settings file automatically generated by regressiontests.admin_scripts test case\n') exports = [ - 'DATABASE_ENGINE', - 'DATABASE_NAME', - 'DATABASE_USER', - 'DATABASE_PASSWORD', - 'DATABASE_HOST', - 'DATABASE_PORT', + 'DATABASES', 'ROOT_URLCONF' ] for s in exports: - if hasattr(settings,s): - settings_file.write("%s = '%s'\n" % (s, str(getattr(settings,s)))) + if hasattr(settings, s): + o = getattr(settings, s) + if not isinstance(o, dict): + o = "'%s'" % o + settings_file.write("%s = %s\n" % (s, o)) if apps is None: apps = ['django.contrib.auth', 'django.contrib.contenttypes', 'admin_scripts'] @@ -523,7 +521,7 @@ class DjangoAdminSettingsDirectory(AdminScriptTestCase): A series of tests for django-admin.py when the settings file is in a directory. (see #9751). """ - + def setUp(self): self.write_settings('settings', is_dir=True)