diff --git a/django/contrib/auth/tests/views.py b/django/contrib/auth/tests/views.py index a5d0262114..ed1c81edfa 100644 --- a/django/contrib/auth/tests/views.py +++ b/django/contrib/auth/tests/views.py @@ -191,10 +191,13 @@ class LoginTest(AuthViewsTestCase): def test_current_site_in_context_after_login(self): response = self.client.get(reverse('django.contrib.auth.views.login')) self.assertEquals(response.status_code, 200) - site = Site.objects.get_current() - self.assertEquals(response.context['site'], site) - self.assertEquals(response.context['site_name'], site.name) - self.assert_(isinstance(response.context['form'], AuthenticationForm), + if Site._meta.installed: + site = Site.objects.get_current() + self.assertEquals(response.context['site'], site) + self.assertEquals(response.context['site_name'], site.name) + else: + self.assertTrue(isinstance(response.context['site'], RequestSite)) + self.assert_(isinstance(response.context['form'], AuthenticationForm), 'Login form is not an AuthenticationForm') def test_security_check(self, password='password'): @@ -236,7 +239,7 @@ class LoginTest(AuthViewsTestCase): self.assertEquals(response.status_code, 302) self.assertTrue('/view/?param=%s' % url_ in response['Location'], "/view/?param=%s should be allowed" % url_) - + class LogoutTest(AuthViewsTestCase): urls = 'django.contrib.auth.tests.urls' @@ -267,7 +270,7 @@ class LogoutTest(AuthViewsTestCase): response = self.client.get('/logout/') self.assertTrue('site' in response.context) - def test_logout_with_next_page_specified(self): + def test_logout_with_next_page_specified(self): "Logout with next_page option given redirects to specified resource" self.login() response = self.client.get('/logout/next_page/') diff --git a/django/contrib/contenttypes/tests.py b/django/contrib/contenttypes/tests.py index a846b07790..7a1ca99d33 100644 --- a/django/contrib/contenttypes/tests.py +++ b/django/contrib/contenttypes/tests.py @@ -61,9 +61,11 @@ class ContentTypesTests(TestCase): from django.contrib.auth.models import User user_ct = ContentType.objects.get_for_model(User) obj = User.objects.create(username="john") - Site._meta.installed = True - response = shortcut(request, user_ct.id, obj.id) - self.assertEqual("http://example.com/users/john/", response._headers.get("location")[1]) + + if Site._meta.installed: + response = shortcut(request, user_ct.id, obj.id) + self.assertEqual("http://example.com/users/john/", response._headers.get("location")[1]) + Site._meta.installed = False response = shortcut(request, user_ct.id, obj.id) self.assertEqual("http://Example.com/users/john/", response._headers.get("location")[1]) diff --git a/django/contrib/sitemaps/tests/basic.py b/django/contrib/sitemaps/tests/basic.py index a47f4d8979..570316053a 100644 --- a/django/contrib/sitemaps/tests/basic.py +++ b/django/contrib/sitemaps/tests/basic.py @@ -13,6 +13,10 @@ class SitemapTests(TestCase): urls = 'django.contrib.sitemaps.tests.urls' def setUp(self): + if Site._meta.installed: + self.base_url = 'http://example.com' + else: + self.base_url = 'http://testserver' self.old_USE_L10N = settings.USE_L10N self.old_Site_meta_installed = Site._meta.installed # Create a user that will double as sitemap content @@ -29,9 +33,9 @@ class SitemapTests(TestCase): # Check for all the important bits: self.assertEquals(response.content, """ -http://example.com/location/%snever0.5 +%s/location/%snever0.5 -""" % date.today().strftime('%Y-%m-%d')) +""" % (self.base_url, date.today().strftime('%Y-%m-%d'))) if settings.USE_I18N: def test_localized_priority(self): @@ -55,13 +59,13 @@ class SitemapTests(TestCase): expected = '' for username in User.objects.values_list("username", flat=True): - expected += "http://example.com/users/%s/" %username + expected += "%s/users/%s/" % (self.base_url, username) # Check for all the important bits: self.assertEquals(response.content, """ %s -""" %expected) +""" % expected) if "django.contrib.flatpages" in settings.INSTALLED_APPS: def test_flatpage_sitemap(self): @@ -89,9 +93,9 @@ class SitemapTests(TestCase): private.sites.add(settings.SITE_ID) response = self.client.get('/flatpages/sitemap.xml') # Public flatpage should be in the sitemap - self.assertContains(response, 'http://example.com%s' % public.url) + self.assertContains(response, 'http://%s%s' % (self.base_url, public.url)) # Private flatpage should not be in the sitemap - self.assertNotContains(response, 'http://example.com%s' % private.url) + self.assertNotContains(response, 'http://%s%s' % (self.base_url, private.url)) def test_requestsite_sitemap(self): # Make sure hitting the flatpages sitemap without the sites framework @@ -106,14 +110,14 @@ class SitemapTests(TestCase): """ % date.today().strftime('%Y-%m-%d')) - def test_sitemap_get_urls_no_site_1(self): - """ - Check we get ImproperlyConfigured if we don't pass a site object to - Sitemap.get_urls and no Site objects exist - """ - Site._meta.installed = True - Site.objects.all().delete() - self.assertRaises(ImproperlyConfigured, Sitemap().get_urls) + if "django.contrib.sites" in settings.INSTALLED_APPS: + def test_sitemap_get_urls_no_site_1(self): + """ + Check we get ImproperlyConfigured if we don't pass a site object to + Sitemap.get_urls and no Site objects exist + """ + Site.objects.all().delete() + self.assertRaises(ImproperlyConfigured, Sitemap().get_urls) def test_sitemap_get_urls_no_site_2(self): """ @@ -121,6 +125,5 @@ class SitemapTests(TestCase): Sitemap.get_urls if Site objects exists, but the sites framework is not actually installed. """ - Site.objects.get_current() Site._meta.installed = False self.assertRaises(ImproperlyConfigured, Sitemap().get_urls)