diff options
Diffstat (limited to 'parts/django/tests/regressiontests/bug8245')
4 files changed, 40 insertions, 0 deletions
diff --git a/parts/django/tests/regressiontests/bug8245/__init__.py b/parts/django/tests/regressiontests/bug8245/__init__.py new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/parts/django/tests/regressiontests/bug8245/__init__.py diff --git a/parts/django/tests/regressiontests/bug8245/admin.py b/parts/django/tests/regressiontests/bug8245/admin.py new file mode 100644 index 0000000..1812269 --- /dev/null +++ b/parts/django/tests/regressiontests/bug8245/admin.py @@ -0,0 +1,7 @@ +from django.contrib import admin + +from models import Story + + +admin.site.register(Story) +raise Exception("Bad admin module") diff --git a/parts/django/tests/regressiontests/bug8245/models.py b/parts/django/tests/regressiontests/bug8245/models.py new file mode 100644 index 0000000..5643955 --- /dev/null +++ b/parts/django/tests/regressiontests/bug8245/models.py @@ -0,0 +1,4 @@ +from django.db import models + +class Story(models.Model): + title = models.CharField(max_length=10) diff --git a/parts/django/tests/regressiontests/bug8245/tests.py b/parts/django/tests/regressiontests/bug8245/tests.py new file mode 100644 index 0000000..5aa4a94 --- /dev/null +++ b/parts/django/tests/regressiontests/bug8245/tests.py @@ -0,0 +1,29 @@ +from unittest import TestCase + +from django.contrib import admin + + +class Bug8245Test(TestCase): + """ + Test for bug #8245 - don't raise an AlreadyRegistered exception when using + autodiscover() and an admin.py module contains an error. + """ + def test_bug_8245(self): + # The first time autodiscover is called, we should get our real error. + try: + admin.autodiscover() + except Exception, e: + self.assertEqual(str(e), "Bad admin module") + else: + self.fail( + 'autodiscover should have raised a "Bad admin module" error.') + + # Calling autodiscover again should raise the very same error it did + # the first time, not an AlreadyRegistered error. + try: + admin.autodiscover() + except Exception, e: + self.assertEqual(str(e), "Bad admin module") + else: + self.fail( + 'autodiscover should have raised a "Bad admin module" error.') |