summaryrefslogtreecommitdiff
path: root/tests/admin_default_site/tests.py
blob: 05663066688e93dbdd2cd3c7411f27b63f1cc2af (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
from django.contrib import admin
from django.contrib.admin import sites
from django.test import SimpleTestCase, override_settings

from .sites import CustomAdminSite


@override_settings(
    INSTALLED_APPS=[
        "admin_default_site.apps.MyCustomAdminConfig",
        "django.contrib.auth",
        "django.contrib.contenttypes",
        "django.contrib.sessions",
        "django.contrib.messages",
        "django.contrib.staticfiles",
    ]
)
class CustomAdminSiteTests(SimpleTestCase):
    def setUp(self):
        # Reset admin.site since it may have already been instantiated by
        # another test app.
        self._old_site = admin.site
        admin.site = sites.site = sites.DefaultAdminSite()

    def tearDown(self):
        admin.site = sites.site = self._old_site

    def test_use_custom_admin_site(self):
        self.assertEqual(admin.site.__class__.__name__, "CustomAdminSite")


class DefaultAdminSiteTests(SimpleTestCase):
    def test_use_default_admin_site(self):
        self.assertEqual(admin.site.__class__.__name__, "AdminSite")

    def test_repr(self):
        self.assertEqual(str(admin.site), "AdminSite(name='admin')")
        self.assertEqual(repr(admin.site), "AdminSite(name='admin')")


class AdminSiteTests(SimpleTestCase):
    def test_repr(self):
        admin_site = CustomAdminSite(name="other")
        self.assertEqual(repr(admin_site), "CustomAdminSite(name='other')")