32 lines
1.3 KiB
Python
32 lines
1.3 KiB
Python
from django.contrib.flatpages.models import FlatPage
|
|
from django.test import SimpleTestCase, override_settings
|
|
from django.test.utils import override_script_prefix
|
|
|
|
|
|
class FlatpageModelTests(SimpleTestCase):
|
|
def setUp(self):
|
|
self.page = FlatPage(title="Café!", url="/café/")
|
|
|
|
def test_get_absolute_url_urlencodes(self):
|
|
self.assertEqual(self.page.get_absolute_url(), "/caf%C3%A9/")
|
|
|
|
@override_script_prefix("/prefix/")
|
|
def test_get_absolute_url_honors_script_prefix(self):
|
|
self.assertEqual(self.page.get_absolute_url(), "/prefix/caf%C3%A9/")
|
|
|
|
def test_str(self):
|
|
self.assertEqual(str(self.page), "/café/ -- Café!")
|
|
|
|
@override_settings(ROOT_URLCONF="flatpages_tests.urls")
|
|
def test_get_absolute_url_include(self):
|
|
self.assertEqual(self.page.get_absolute_url(), "/flatpage_root/caf%C3%A9/")
|
|
|
|
@override_settings(ROOT_URLCONF="flatpages_tests.no_slash_urls")
|
|
def test_get_absolute_url_include_no_slash(self):
|
|
self.assertEqual(self.page.get_absolute_url(), "/flatpagecaf%C3%A9/")
|
|
|
|
@override_settings(ROOT_URLCONF="flatpages_tests.absolute_urls")
|
|
def test_get_absolute_url_with_hardcoded_url(self):
|
|
fp = FlatPage(title="Test", url="/hardcoded/")
|
|
self.assertEqual(fp.get_absolute_url(), "/flatpage/")
|