Used %r in the TextNode repr to show newlines better.
This commit is contained in:
parent
c31bf8cb54
commit
3b81dbe844
|
@ -976,8 +976,8 @@ class TextNode(Node):
|
|||
self.s = s
|
||||
|
||||
def __repr__(self):
|
||||
return force_str("<Text Node: '%s'>" % self.s[:25], 'ascii',
|
||||
errors='replace')
|
||||
rep = "<%s: %r>" % (self.__class__.__name__, self.s[:25])
|
||||
return force_str(rep, 'ascii', errors='replace')
|
||||
|
||||
def render(self, context):
|
||||
return self.s
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
from unittest import TestCase
|
||||
|
||||
from django.template import Context, Engine
|
||||
from django.template.base import VariableNode
|
||||
from django.template.base import TextNode, VariableNode
|
||||
from django.utils import six
|
||||
|
||||
|
||||
class NodelistTest(TestCase):
|
||||
|
@ -32,6 +33,21 @@ class NodelistTest(TestCase):
|
|||
self.assertEqual(len(vars), 1)
|
||||
|
||||
|
||||
class TextNodeTest(TestCase):
|
||||
|
||||
def test_textnode_repr(self):
|
||||
engine = Engine()
|
||||
for temptext, reprtext in [
|
||||
("Hello, world!", "<TextNode: u'Hello, world!'>"),
|
||||
("One\ntwo.", "<TextNode: u'One\\ntwo.'>"),
|
||||
]:
|
||||
template = engine.from_string(temptext)
|
||||
texts = template.nodelist.get_nodes_by_type(TextNode)
|
||||
if six.PY3:
|
||||
reprtext = reprtext.replace("u'", "'")
|
||||
self.assertEqual(repr(texts[0]), reprtext)
|
||||
|
||||
|
||||
class ErrorIndexTest(TestCase):
|
||||
"""
|
||||
Checks whether index of error is calculated correctly in
|
||||
|
|
Loading…
Reference in New Issue