-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathtest_template_tag.py
64 lines (49 loc) · 2.5 KB
/
test_template_tag.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
from django.template import Context, Template, RequestContext
from django.test import TestCase, RequestFactory
from django_translation_flags.templatetags.flags import languages
class TemplateTagFlagTest(TestCase):
def setUp(self):
self.factory = RequestFactory()
request = self.factory.get('/teste')
context = RequestContext(request=request)
self.languages = languages(context)
def test_languages_return_has_key(self):
expected = ['icon_class', 'classes', 'redirect_to']
self.assertListEqual(expected, list(self.languages.keys()))
def test_languages_return_has_classes_key(self):
expected = ['li_class', 'a_class']
self.assertListEqual(expected, list(self.languages['classes'].keys()))
def test_languages_return_flag_type(self):
"""Must return empty when given no param"""
self.assertEqual('', self.languages['icon_class'])
def test_languages_return_li_class(self):
"""Must return empty when given no param"""
self.assertEqual('', self.languages['classes']['li_class'])
def test_languages_return_a_class(self):
"""Must return empty when given no param"""
self.assertEqual('', self.languages['classes']['a_class'])
class TemplateTagFlagTypeTest(TestCase):
def setUp(self):
self.factory = RequestFactory()
request = self.factory.get('/teste')
context = RequestContext(request=request)
self.languages = languages(context, 'square')
def test_languages_return_flag_type_square(self):
"""Must return the class flag-icon-square when given the string 'square' as param"""
self.assertEqual('flag-icon-square', self.languages['icon_class'])
class TemplateTagKwargsTest(TestCase):
def setUp(self):
self.factory = RequestFactory()
template = Template(
'{% load flags %}'
"{% languages 'square' li_class='your-li-class' a_class='your-a-class' %}"
)
request = self.factory.get('/teste')
context = RequestContext(request=request)
self.languages = languages(context=context, li_class='your-li-class', a_class='your-a-class')
def test_languages_return_li_class(self):
"""Must return class when given the key li_class"""
self.assertEqual('your-li-class', self.languages['classes']['li_class'])
def test_languages_return_a_class(self):
"""Must return class when given the key a_class"""
self.assertEqual('your-a-class', self.languages['classes']['a_class'])