|
7 | 7 | from django.contrib.auth.models import User
|
8 | 8 | from django.template import Template
|
9 | 9 | from menus.base import NavigationNode
|
| 10 | +from cms.middleware.multilingual import MultilingualURLMiddleware |
| 11 | +from django.http import HttpResponse |
| 12 | +from cms.templatetags.cms_admin import preview_link |
10 | 13 |
|
11 | 14 |
|
12 | 15 | class NonRootCase(CMSTestCase):
|
@@ -72,3 +75,27 @@ def test_show_breadcrumb(self):
|
72 | 75 | self.assertEqual(nodes[0].get_absolute_url(), "/content/")
|
73 | 76 | self.assertEqual(isinstance(nodes[0], NavigationNode), True)
|
74 | 77 | self.assertEqual(nodes[1].get_absolute_url(), page2.get_absolute_url())
|
| 78 | + |
| 79 | + def test_form_multilingual(self): |
| 80 | + """ |
| 81 | + Tests for correct form URL mangling |
| 82 | + """ |
| 83 | + language = 'en' |
| 84 | + pages_root = self.get_pages_root() |
| 85 | + middle = MultilingualURLMiddleware() |
| 86 | + request = self.get_request(pages_root,language=language) |
| 87 | + |
| 88 | + html = '<form action="%sfoo/bar/"> </form>' % pages_root |
| 89 | + response = middle.process_response(request,HttpResponse(html)) |
| 90 | + self.assertContains(response,'/%s%sfoo/bar/' % (language,pages_root)) |
| 91 | + self.assertContains(response,'/en/content/foo/bar/') |
| 92 | + |
| 93 | + def test_form_multilingual_admin(self): |
| 94 | + """ |
| 95 | + Tests for correct form URL mangling in preview_link templatetag |
| 96 | + """ |
| 97 | + language = 'en' |
| 98 | + pages_root = self.get_pages_root() |
| 99 | + link = preview_link(self.page2,language=language) |
| 100 | + self.assertEqual(link,'/%s%s%s/' % (language,pages_root,self.page2.get_slug())) |
| 101 | + self.assertEqual(link,'/en/content/page2/') |
0 commit comments