Commit 927dabee authored by Tarek Ziadé's avatar Tarek Ziadé

Merged revisions 76684 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/trunk

........
  r76684 | tarek.ziade | 2009-12-06 10:22:40 +0100 (Sun, 06 Dec 2009) | 1 line

  Fixed #1923: make sure we don't strip meaningful whitespace in PKG-INFO Description field
........
parent 14820811
...@@ -5,6 +5,7 @@ import io ...@@ -5,6 +5,7 @@ import io
import sys import sys
import unittest import unittest
import warnings import warnings
import textwrap
from distutils.dist import Distribution, fix_help_options from distutils.dist import Distribution, fix_help_options
from distutils.cmd import Command from distutils.cmd import Command
...@@ -353,6 +354,21 @@ class MetadataTestCase(support.TempdirManager, support.EnvironGuard, ...@@ -353,6 +354,21 @@ class MetadataTestCase(support.TempdirManager, support.EnvironGuard,
if line.strip() != ''] if line.strip() != '']
self.assertTrue(len(output) > 0) self.assertTrue(len(output) > 0)
def test_long_description(self):
long_desc = textwrap.dedent("""\
example::
We start here
and continue here
and end here.""")
attrs = {"name": "package",
"version": "1.0",
"long_description": long_desc}
dist = distutils.dist.Distribution(attrs)
meta = self.format_metadata(dist)
meta = meta.replace('\n' + 8 * ' ', '\n')
self.assertTrue(long_desc in meta)
def test_suite(): def test_suite():
suite = unittest.TestSuite() suite = unittest.TestSuite()
suite.addTest(unittest.makeSuite(DistributionTestCase)) suite.addTest(unittest.makeSuite(DistributionTestCase))
......
...@@ -557,8 +557,8 @@ def rfc822_escape(header): ...@@ -557,8 +557,8 @@ def rfc822_escape(header):
"""Return a version of the string escaped for inclusion in an """Return a version of the string escaped for inclusion in an
RFC-822 header, by ensuring there are 8 spaces space after each newline. RFC-822 header, by ensuring there are 8 spaces space after each newline.
""" """
lines = [x.strip() for x in header.split('\n')] lines = header.split('\n')
sep = '\n' + 8*' ' sep = '\n' + 8 * ' '
return sep.join(lines) return sep.join(lines)
_RE_VERSION = re.compile(b'(\d+\.\d+(\.\d+)*)') _RE_VERSION = re.compile(b'(\d+\.\d+(\.\d+)*)')
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment