From: Greg Ward Date: Thu, 3 Jun 2004 01:51:27 +0000 (+0000) Subject: SF #965425: add WrapTestCase.test_punct_hyphens() to ensure that X-Git-Tag: v2.3.5c1~232 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=9284494dae487a59e63d175ad32be5df190e633e;p=thirdparty%2FPython%2Fcpython.git SF #965425: add WrapTestCase.test_punct_hyphens() to ensure that hyphenated words wrapped in punctuation, like "foo-bar" or [ding-dong], are split correctly. --- diff --git a/Lib/test/test_textwrap.py b/Lib/test/test_textwrap.py index 6811119d4caa..52389e481e6f 100644 --- a/Lib/test/test_textwrap.py +++ b/Lib/test/test_textwrap.py @@ -1,5 +1,5 @@ # -# Test script for the textwrap module. +# Test suite for the textwrap module. # # Original tests written by Greg Ward . # Converted to PyUnit by Peter Hansen . @@ -271,6 +271,23 @@ What a mess! self.check_split("foo --option-opt bar", ["foo", " ", "--option-", "opt", " ", "bar"]) + def test_punct_hyphens(self): + # Oh bother, SF #965425 found another problem with hyphens -- + # hyphenated words in single quotes weren't handled correctly. + # In fact, the bug is that *any* punctuation around a hyphenated + # word was handled incorrectly, except for a leading "--", which + # was special-cased for Optik and Docutils. So test a variety + # of styles of punctuation around a hyphenated word. + # (Actually this is based on an Optik bug report, #813077). + self.check_split("the 'wibble-wobble' widget", + ['the', ' ', "'wibble-", "wobble'", ' ', 'widget']) + self.check_split('the "wibble-wobble" widget', + ['the', ' ', '"wibble-', 'wobble"', ' ', 'widget']) + self.check_split("the (wibble-wobble) widget", + ['the', ' ', "(wibble-", "wobble)", ' ', 'widget']) + self.check_split("the ['wibble-wobble'] widget", + ['the', ' ', "['wibble-", "wobble']", ' ', 'widget']) + def test_funky_parens (self): # Second part of SF bug #596434: long option strings inside # parentheses.