|
@@ -24,7 +24,8 @@ class TestPageUrlTags(TestCase):
|
|
|
tpl = template.Template(
|
|
|
"""{% load wagtailcore_tags %}<a href="{% pageurl page fallback='fallback' %}">Fallback</a>"""
|
|
|
)
|
|
|
- result = tpl.render(template.Context({"page": None}))
|
|
|
+ with self.assertNumQueries(0):
|
|
|
+ result = tpl.render(template.Context({"page": None}))
|
|
|
self.assertIn('<a href="/fallback/">Fallback</a>', result)
|
|
|
|
|
|
def test_pageurl_with_get_absolute_url_object_fallback(self):
|
|
@@ -81,11 +82,30 @@ class TestPageUrlTags(TestCase):
|
|
|
)
|
|
|
|
|
|
|
|
|
- result = tpl.render(template.Context({"page": page}))
|
|
|
+ with self.assertNumQueries(7):
|
|
|
+ result = tpl.render(template.Context({"page": page}))
|
|
|
self.assertIn('<a href="/events/">Events</a>', result)
|
|
|
|
|
|
|
|
|
- result = tpl.render(template.Context({"page": page, "request": HttpRequest()}))
|
|
|
+ result = tpl.render(
|
|
|
+ template.Context({"page": page, "request": get_dummy_request()})
|
|
|
+ )
|
|
|
+ self.assertIn('<a href="/events/">Events</a>', result)
|
|
|
+
|
|
|
+ def test_pageurl_caches(self):
|
|
|
+ page = Page.objects.get(url_path="/home/events/")
|
|
|
+ tpl = template.Template(
|
|
|
+ """{% load wagtailcore_tags %}<a href="{% pageurl page %}">{{ page.title }}</a>"""
|
|
|
+ )
|
|
|
+
|
|
|
+ request = get_dummy_request()
|
|
|
+
|
|
|
+ with self.assertNumQueries(8):
|
|
|
+ result = tpl.render(template.Context({"page": page, "request": request}))
|
|
|
+ self.assertIn('<a href="/events/">Events</a>', result)
|
|
|
+
|
|
|
+ with self.assertNumQueries(0):
|
|
|
+ result = tpl.render(template.Context({"page": page, "request": request}))
|
|
|
self.assertIn('<a href="/events/">Events</a>', result)
|
|
|
|
|
|
@override_settings(ALLOWED_HOSTS=["testserver", "localhost", "unknown.example.com"])
|
|
@@ -98,7 +118,8 @@ class TestPageUrlTags(TestCase):
|
|
|
|
|
|
request = get_dummy_request()
|
|
|
request.META["HTTP_HOST"] = "unknown.example.com"
|
|
|
- result = tpl.render(template.Context({"page": page, "request": request}))
|
|
|
+ with self.assertNumQueries(8):
|
|
|
+ result = tpl.render(template.Context({"page": page, "request": request}))
|
|
|
self.assertIn('<a href="/events/">Events</a>', result)
|
|
|
|
|
|
def test_bad_pageurl(self):
|
|
@@ -161,7 +182,10 @@ class TestPageUrlTags(TestCase):
|
|
|
self.assertEqual(result, "/events/")
|
|
|
|
|
|
|
|
|
- result = slugurl(template.Context({"request": HttpRequest()}), "events")
|
|
|
+ with self.assertNumQueries(3):
|
|
|
+ result = slugurl(
|
|
|
+ template.Context({"request": get_dummy_request()}), "events"
|
|
|
+ )
|
|
|
self.assertEqual(result, "/events/")
|
|
|
|
|
|
@override_settings(ALLOWED_HOSTS=["testserver", "localhost", "unknown.example.com"])
|