Fix an endcase bug: initial_indent was ignored when the text was short
enough to fit in one line.
This commit is contained in:
parent
fb4d6ecd07
commit
eb287a2662
|
@ -33,11 +33,11 @@ class BaseTestCase(unittest.TestCase):
|
||||||
'expected:\n%s\nbut got:\n%s' % (
|
'expected:\n%s\nbut got:\n%s' % (
|
||||||
self.show(expect), self.show(result)))
|
self.show(expect), self.show(result)))
|
||||||
|
|
||||||
def check_wrap (self, text, width, expect):
|
def check_wrap(self, text, width, expect, **kwargs):
|
||||||
result = wrap(text, width)
|
result = wrap(text, width, **kwargs)
|
||||||
self.check(result, expect)
|
self.check(result, expect)
|
||||||
|
|
||||||
def check_split (self, wrapper, text, expect):
|
def check_split(self, wrapper, text, expect):
|
||||||
result = wrapper._split(text)
|
result = wrapper._split(text)
|
||||||
self.assertEquals(result, expect,
|
self.assertEquals(result, expect,
|
||||||
"\nexpected %r\n"
|
"\nexpected %r\n"
|
||||||
|
@ -101,6 +101,16 @@ What a mess!
|
||||||
self.check_wrap(text, 40, ["This is a short paragraph."])
|
self.check_wrap(text, 40, ["This is a short paragraph."])
|
||||||
|
|
||||||
|
|
||||||
|
def test_wrap_short_1line(self):
|
||||||
|
# Test endcases
|
||||||
|
|
||||||
|
text = "This is a short line."
|
||||||
|
|
||||||
|
self.check_wrap(text, 30, ["This is a short line."])
|
||||||
|
self.check_wrap(text, 30, ["(1) This is a short line."],
|
||||||
|
initial_indent="(1) ")
|
||||||
|
|
||||||
|
|
||||||
def test_hyphenated(self):
|
def test_hyphenated(self):
|
||||||
# Test breaking hyphenated words
|
# Test breaking hyphenated words
|
||||||
|
|
||||||
|
|
|
@ -237,8 +237,9 @@ class TextWrapper:
|
||||||
converted to space.
|
converted to space.
|
||||||
"""
|
"""
|
||||||
text = self._munge_whitespace(text)
|
text = self._munge_whitespace(text)
|
||||||
if len(text) <= self.width:
|
indent = self.initial_indent
|
||||||
return [text]
|
if len(text) + len(indent) <= self.width:
|
||||||
|
return [indent + text]
|
||||||
chunks = self._split(text)
|
chunks = self._split(text)
|
||||||
if self.fix_sentence_endings:
|
if self.fix_sentence_endings:
|
||||||
self._fix_sentence_endings(chunks)
|
self._fix_sentence_endings(chunks)
|
||||||
|
|
Loading…
Reference in New Issue