summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRamiro Morales <cramm0@gmail.com>2012-03-10 17:36:41 +0000
committerRamiro Morales <cramm0@gmail.com>2012-03-10 17:36:41 +0000
commit4cd9b4bb5081338176e66dae14115130d50831a9 (patch)
treecf5f6bcfddb35b944e1c153702856135da77a307
parentc4527b1df743c43983e9912c81b73bc0b02fe1b9 (diff)
Fixed #17327 (again) -- Moved createsuperuser tests added in r17665.
In their new location they won't cause multi-db-related errors when users run contrib.auh tests together with their application tests. Thanks brianriley for the patch. git-svn-id: http://code.djangoproject.com/svn/django/trunk@17676 bcc190cf-cafb-0310-a4f2-bffc1f526a37
-rw-r--r--django/contrib/auth/tests/__init__.py2
-rw-r--r--django/contrib/auth/tests/management.py51
-rw-r--r--tests/regressiontests/createsuperuser/__init__.py0
-rw-r--r--tests/regressiontests/createsuperuser/models.py0
-rw-r--r--tests/regressiontests/createsuperuser/tests.py57
5 files changed, 57 insertions, 53 deletions
diff --git a/django/contrib/auth/tests/__init__.py b/django/contrib/auth/tests/__init__.py
index cd314f6050..cc619776a5 100644
--- a/django/contrib/auth/tests/__init__.py
+++ b/django/contrib/auth/tests/__init__.py
@@ -12,8 +12,6 @@ from django.contrib.auth.tests.remote_user import (RemoteUserTest,
from django.contrib.auth.tests.management import (
GetDefaultUsernameTestCase,
ChangepasswordManagementCommandTestCase,
- MultiDBChangepasswordManagementCommandTestCase,
- MultiDBCreatesuperuserTestCase,
)
from django.contrib.auth.tests.models import (ProfileTestCase, NaturalKeysTestCase,
LoadDataWithoutNaturalKeysTestCase, LoadDataWithNaturalKeysTestCase,
diff --git a/django/contrib/auth/tests/management.py b/django/contrib/auth/tests/management.py
index 2287ab91ad..3708cc8bd0 100644
--- a/django/contrib/auth/tests/management.py
+++ b/django/contrib/auth/tests/management.py
@@ -2,7 +2,6 @@ from StringIO import StringIO
from django.contrib.auth import models, management
from django.contrib.auth.management.commands import changepassword
-from django.core.management import call_command
from django.test import TestCase
@@ -70,53 +69,3 @@ class ChangepasswordManagementCommandTestCase(TestCase):
stdout=self.stdout,
stderr=self.stderr
)
-
-
-class MultiDBChangepasswordManagementCommandTestCase(TestCase):
- multi_db = True
-
- def setUp(self):
- self.user = models.User.objects.db_manager('other').create_user(username='joe', password='qwerty')
- self.stdout = StringIO()
-
- def tearDown(self):
- self.stdout.close()
-
- def test_that_changepassword_command_with_database_option_uses_given_db(self):
- """
- Executing the changepassword management command with a database option
- should operate on the specified DB
- """
- self.assertTrue(self.user.check_password('qwerty'))
- command = changepassword.Command()
- command._get_pass = lambda *args: 'not qwerty'
-
- command.execute("joe", database='other', stdout=self.stdout)
- command_output = self.stdout.getvalue().strip()
-
- self.assertEquals(command_output, "Changing password for user 'joe'\nPassword changed successfully for user 'joe'")
- self.assertTrue(models.User.objects.using('other').get(username="joe").check_password("not qwerty"))
-
-
-class MultiDBCreatesuperuserTestCase(TestCase):
- multi_db = True
-
- def test_createsuperuser_command_with_database_option(self):
- " createsuperuser command should operate on specified DB"
- new_io = StringIO()
-
- call_command("createsuperuser",
- interactive=False,
- username="joe",
- email="joe@somewhere.org",
- database='other',
- stdout=new_io
- )
- command_output = new_io.getvalue().strip()
-
- self.assertEqual(command_output, 'Superuser created successfully.')
-
- u = models.User.objects.using('other').get(username="joe")
- self.assertEqual(u.email, 'joe@somewhere.org')
-
- new_io.close()
diff --git a/tests/regressiontests/createsuperuser/__init__.py b/tests/regressiontests/createsuperuser/__init__.py
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/tests/regressiontests/createsuperuser/__init__.py
diff --git a/tests/regressiontests/createsuperuser/models.py b/tests/regressiontests/createsuperuser/models.py
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/tests/regressiontests/createsuperuser/models.py
diff --git a/tests/regressiontests/createsuperuser/tests.py b/tests/regressiontests/createsuperuser/tests.py
new file mode 100644
index 0000000000..4fdb5923ab
--- /dev/null
+++ b/tests/regressiontests/createsuperuser/tests.py
@@ -0,0 +1,57 @@
+from StringIO import StringIO
+
+from django.contrib.auth import models
+from django.contrib.auth.management.commands import changepassword
+from django.core.management import call_command
+from django.test import TestCase
+
+
+class MultiDBChangepasswordManagementCommandTestCase(TestCase):
+ multi_db = True
+
+ def setUp(self):
+ self.user = models.User.objects.db_manager('other').create_user(username='joe', password='qwerty')
+ self.stdout = StringIO()
+
+ def tearDown(self):
+ self.stdout.close()
+
+ def test_that_changepassword_command_with_database_option_uses_given_db(self):
+ """
+ Executing the changepassword management command with a database option
+ should operate on the specified DB
+ """
+ self.assertTrue(self.user.check_password('qwerty'))
+ command = changepassword.Command()
+ command._get_pass = lambda *args: 'not qwerty'
+
+ command.execute("joe", database='other', stdout=self.stdout)
+ command_output = self.stdout.getvalue().strip()
+
+ self.assertEquals(command_output, "Changing password for user 'joe'\nPassword changed successfully for user 'joe'")
+ self.assertTrue(models.User.objects.using('other').get(username="joe").check_password("not qwerty"))
+
+
+class MultiDBCreatesuperuserTestCase(TestCase):
+ multi_db = True
+
+ def test_createsuperuser_command_with_database_option(self):
+ " createsuperuser command should operate on specified DB"
+ new_io = StringIO()
+
+ call_command("createsuperuser",
+ interactive=False,
+ username="joe",
+ email="joe@somewhere.org",
+ database='other',
+ stdout=new_io
+ )
+ command_output = new_io.getvalue().strip()
+
+ self.assertEqual(command_output, 'Superuser created successfully.')
+
+ u = models.User.objects.using('other').get(username="joe")
+ self.assertEqual(u.email, 'joe@somewhere.org')
+
+ new_io.close()
+