summaryrefslogtreecommitdiff
path: root/tests/modeltests/multiple_databases
diff options
context:
space:
mode:
Diffstat (limited to 'tests/modeltests/multiple_databases')
-rw-r--r--tests/modeltests/multiple_databases/models.py41
1 files changed, 18 insertions, 23 deletions
diff --git a/tests/modeltests/multiple_databases/models.py b/tests/modeltests/multiple_databases/models.py
index ce52d96f0f..ce0be8f6c1 100644
--- a/tests/modeltests/multiple_databases/models.py
+++ b/tests/modeltests/multiple_databases/models.py
@@ -72,26 +72,25 @@ class Vehicle(models.Model):
return "%d %s %s" % (self.year, self.make, self.model)
-API_TESTS = """
+__test__ = {'API_TESTS': """
# See what connections are defined. django.db.connections acts like a dict.
->>> from django.db import connection, connections, _default
+>>> from django.db import connection, connections, _default, model_connection_name
>>> from django.conf import settings
# The default connection is in there, but let's ignore it
>>> non_default = connections.keys()
>>> non_default.remove(_default)
+>>> non_default.sort()
>>> non_default
-['django_test_db_a', 'django_test_db_b']
+['_a', '_b']
# Each connection references its settings
->>> connections['django_test_db_a'].settings.DATABASE_NAME == settings.OTHER_DATABASES['django_test_db_a']['DATABASE_NAME']
+>>> connections['_a'].settings.DATABASE_NAME == settings.OTHER_DATABASES['_a']['DATABASE_NAME']
True
->>> connections['django_test_db_b'].settings.DATABASE_NAME == settings.OTHER_DATABASES['django_test_db_b']['DATABASE_NAME']
+>>> connections['_b'].settings.DATABASE_NAME == settings.OTHER_DATABASES['_b']['DATABASE_NAME']
True
->>> connections['django_test_db_b'].settings.DATABASE_NAME == settings.OTHER_DATABASES['django_test_db_a']['DATABASE_NAME']
-False
# Invalid connection names raise ImproperlyConfigured
>>> connections['bad']
@@ -100,16 +99,12 @@ Traceback (most recent call last):
ImproperlyConfigured: No database connection 'bad' has been configured
# Models can access their connections through their managers
->>> Artist.objects.db is connections['django_test_db_a']
+>>> model_connection_name(Artist)
+'_a'
+>>> model_connection_name(Widget)
+'_b'
+>>> model_connection_name(Vehicle) is _default
True
->>> Widget.objects.db is connections['django_test_db_b']
-True
->>> Vehicle.objects.db.connection.settings.DATABASE_NAME == connection.settings.DATABASE_NAME
-True
->>> Artist.objects.db is Widget.objects.db
-False
->>> Artist.objects.db.connection is Vehicle.objects.db.connection
-False
>>> a = Artist(name="Paul Klee", alive=False)
>>> a.save()
>>> w = Widget(code='100x2r', weight=1000)
@@ -130,7 +125,7 @@ False
>>> w = Widget(code="99rbln", weight=1)
>>> a.save()
-# Only connection 'django_test_db_a' is committed, so if we rollback
+# Only connection '_a' is committed, so if we rollback
# all connections we'll forget the new Widget.
>>> transaction.rollback()
@@ -162,11 +157,11 @@ False
# dict is passed, the keys are ignored and the values used as the list
# of connections to commit, rollback, etc.
->>> transaction.commit(connections['django_test_db_b'])
->>> transaction.commit('django_test_db_b')
->>> transaction.commit(connections='django_test_db_b')
->>> transaction.commit(connections=['django_test_db_b'])
->>> transaction.commit(['django_test_db_a', 'django_test_db_b'])
+>>> transaction.commit(connections['_b'])
+>>> transaction.commit('_b')
+>>> transaction.commit(connections='_b')
+>>> transaction.commit(connections=['_b'])
+>>> transaction.commit(['_a', '_b'])
>>> transaction.commit(connections)
# When the connections argument is omitted entirely, the transaction
@@ -211,4 +206,4 @@ False
>>> w = Widget.objects.get(code='d101')
>>> list(w.doohickeys.all())
[<DooHickey: Thing>]
-"""
+"""}