mirror of
				https://github.com/django/django.git
				synced 2025-10-31 09:41:08 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			41 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| from django.template import Context, Template, Variable, VariableDoesNotExist
 | |
| from django.test import SimpleTestCase
 | |
| from django.utils.translation import gettext_lazy
 | |
| 
 | |
| 
 | |
| class TemplateTests(SimpleTestCase):
 | |
|     def test_lazy_template_string(self):
 | |
|         template_string = gettext_lazy('lazy string')
 | |
|         self.assertEqual(Template(template_string).render(Context()), template_string)
 | |
| 
 | |
|     def test_repr(self):
 | |
|         template = Template(
 | |
|             '<html><body>\n'
 | |
|             '{% if test %}<h1>{{ varvalue }}</h1>{% endif %}'
 | |
|             '</body></html>'
 | |
|         )
 | |
|         self.assertEqual(
 | |
|             repr(template),
 | |
|             '<Template template_string="<html><body>{% if t...">',
 | |
|         )
 | |
| 
 | |
| 
 | |
| class VariableDoesNotExistTests(SimpleTestCase):
 | |
|     def test_str(self):
 | |
|         exc = VariableDoesNotExist(msg='Failed lookup in %r', params=({'foo': 'bar'},))
 | |
|         self.assertEqual(str(exc), "Failed lookup in {'foo': 'bar'}")
 | |
| 
 | |
| 
 | |
| class VariableTests(SimpleTestCase):
 | |
|     def test_integer_literals(self):
 | |
|         self.assertEqual(Variable('999999999999999999999999999').literal, 999999999999999999999999999)
 | |
| 
 | |
|     def test_nonliterals(self):
 | |
|         """Variable names that aren't resolved as literals."""
 | |
|         var_names = []
 | |
|         for var in ('inf', 'infinity', 'iNFiniTy', 'nan'):
 | |
|             var_names.extend((var, '-' + var, '+' + var))
 | |
|         for var in var_names:
 | |
|             with self.subTest(var=var):
 | |
|                 self.assertIsNone(Variable(var).literal)
 |