From 00859c053857437b635ba9e813f46e884f3aecb4 Mon Sep 17 00:00:00 2001
From: Barry Warsaw <barry@python.org>
Date: Wed, 28 Nov 2001 05:49:39 +0000
Subject: __format(): Applied SF patch #482003 by Skip to fix multiline dict
 output.

Patch includes additional test case test_basic_line_wrap().

This patch is a candidate for Python 2.1.2.
---
 Lib/pprint.py           |  2 +-
 Lib/test/test_pprint.py | 19 +++++++++++++++++++
 2 files changed, 20 insertions(+), 1 deletion(-)

diff --git a/Lib/pprint.py b/Lib/pprint.py
index b16fb08..5d178a2 100644
--- a/Lib/pprint.py
+++ b/Lib/pprint.py
@@ -158,7 +158,7 @@ class PrettyPrinter:
                     if length > 1:
                         for key, ent in items[1:]:
                             rep = self.__repr(key, context, level)
-                            write(',\n%s: %s' % (' '*indent, rep))
+                            write(',\n%s%s: ' % (' '*indent, rep))
                             self.__format(ent, stream, indent + _len(rep) + 2,
                                           allowance + 1, context, level)
                     indent = indent - self.__indent_per_level
diff --git a/Lib/test/test_pprint.py b/Lib/test/test_pprint.py
index 167b4ac..14626fb 100644
--- a/Lib/test/test_pprint.py
+++ b/Lib/test/test_pprint.py
@@ -77,6 +77,25 @@ class QueryTestCase(unittest.TestCase):
                                       (native, got, function))
 
 
+    def test_basic_line_wrap(self):
+        """verify basic line-wrapping operation"""
+        o = {'RPM_cal': 0,
+             'RPM_cal2': 48059,
+             'Speed_cal': 0,
+             'controldesk_runtime_us': 0,
+             'main_code_runtime_us': 0,
+             'read_io_runtime_us': 0,
+             'write_io_runtime_us': 43690}
+        exp = """\
+{'RPM_cal': 0,
+ 'RPM_cal2': 48059,
+ 'Speed_cal': 0,
+ 'controldesk_runtime_us': 0,
+ 'main_code_runtime_us': 0,
+ 'read_io_runtime_us': 0,
+ 'write_io_runtime_us': 43690}"""
+        self.assertEqual(pprint.pformat(o), exp)
+
 def test_main():
     test_support.run_unittest(QueryTestCase)
 
-- 
cgit v0.12

