Remove unreachable code from slugurl tag.

pull/4213/merge
J Rob Gant 2018-01-25 09:39:56 -05:00 zatwierdzone przez Matt Westcott
rodzic 4bf6b09873
commit 218a47e802
4 zmienionych plików z 16 dodań i 10 usunięć

Wyświetl plik

@ -269,6 +269,7 @@ Contributors
* Bruno Alla
* Christopher Bledsoe (The Motley Fool)
* Florent Osmont
* J Rob Gant
Translators
===========

Wyświetl plik

@ -37,16 +37,6 @@ def slugurl(context, slug):
if page:
# call pageurl() instead of page.relative_url() here so we get the ``accepts_kwarg`` logic
return pageurl(context, page)
else:
return None
try:
current_site = context['request'].site
except (KeyError, AttributeError):
# request.site not available in the current context; fall back on page.url
return page.url
return page.relative_url(current_site)
@register.simple_tag

Wyświetl plik

@ -45,6 +45,10 @@ class TestCoreGlobalsAndFilters(TestCase):
self.render('{{ slugurl(page.slug) }}', {'page': page}),
page.url)
def test_bad_slugurl(self):
self.assertEqual(
self.render('{{ slugurl("bad-slug-doesnt-exist") }}', {}), 'None')
def test_wagtail_version(self):
self.assertEqual(
self.render('{{ wagtail_version() }}'),

Wyświetl plik

@ -48,6 +48,17 @@ class TestPageUrlTags(TestCase):
result = tpl.render(template.Context({'request': HttpRequest()}))
self.assertIn('<a href="/events/">Events</a>', result)
def test_bad_slugurl(self):
tpl = template.Template('''{% load wagtailcore_tags %}<a href="{% slugurl 'bad-slug-doesnt-exist' %}">Events</a>''')
# no 'request' object in context
result = tpl.render(template.Context({}))
self.assertIn('<a href="None">Events</a>', result)
# 'request' object in context, but no 'site' attribute
result = tpl.render(template.Context({'request': HttpRequest()}))
self.assertIn('<a href="None">Events</a>', result)
class TestSiteRootPathsCache(TestCase):
fixtures = ['test.json']