]> granicus.if.org Git - python/commitdiff
Issue 21284: Idle: make test_formatparagraph pass even when a user changes the
authorTerry Jan Reedy <tjreedy@udel.edu>
Tue, 22 Apr 2014 05:10:57 +0000 (01:10 -0400)
committerTerry Jan Reedy <tjreedy@udel.edu>
Tue, 22 Apr 2014 05:10:57 +0000 (01:10 -0400)
reformat width in the configuration menu.

Lib/idlelib/FormatParagraph.py
Lib/idlelib/idle_test/test_formatparagraph.py
Misc/NEWS

index ae4e6e7b91153ee58afda51c5fb5e0235ce4c06b..2ac87e45ea1a7216f3b708d50f796438cfc9eafc 100644 (file)
@@ -32,7 +32,7 @@ class FormatParagraph:
     def close(self):
         self.editwin = None
 
-    def format_paragraph_event(self, event):
+    def format_paragraph_event(self, event, limit=None):
         """Formats paragraph to a max width specified in idleConf.
 
         If text is selected, format_paragraph_event will start breaking lines
@@ -41,9 +41,12 @@ class FormatParagraph:
         If no text is selected, format_paragraph_event uses the current
         cursor location to determine the paragraph (lines of text surrounded
         by blank lines) and formats it.
+
+        The length limit parameter is for testing with a known value.
         """
-        maxformatwidth = idleConf.GetOption(
-                'main', 'FormatParagraph', 'paragraph', type='int')
+        if limit == None:
+            limit = idleConf.GetOption(
+                    'main', 'FormatParagraph', 'paragraph', type='int')
         text = self.editwin.text
         first, last = self.editwin.get_selection_indices()
         if first and last:
@@ -53,9 +56,9 @@ class FormatParagraph:
             first, last, comment_header, data = \
                     find_paragraph(text, text.index("insert"))
         if comment_header:
-            newdata = reformat_comment(data, maxformatwidth, comment_header)
+            newdata = reformat_comment(data, limit, comment_header)
         else:
-            newdata = reformat_paragraph(data, maxformatwidth)
+            newdata = reformat_paragraph(data, limit)
         text.tag_remove("sel", "1.0", "end")
 
         if newdata != data:
index eed22869f07b57f56430ebc8a3754856cc5db609..07bbf16e879e4807329da040583804ed16ee7def 100644 (file)
@@ -293,7 +293,7 @@ class FormatEventTest(unittest.TestCase):
         # Set cursor ('insert' mark) to '1.0', within text.
         text.insert('1.0', self.test_string)
         text.mark_set('insert', '1.0')
-        self.formatter('ParameterDoesNothing')
+        self.formatter('ParameterDoesNothing', limit=70)
         result = text.get('1.0', 'insert')
         # find function includes \n
         expected = (
@@ -305,7 +305,7 @@ class FormatEventTest(unittest.TestCase):
         # Select from 1.11 to line end.
         text.insert('1.0', self.test_string)
         text.tag_add('sel', '1.11', '1.end')
-        self.formatter('ParameterDoesNothing')
+        self.formatter('ParameterDoesNothing', limit=70)
         result = text.get('1.0', 'insert')
         # selection excludes \n
         expected = (
@@ -319,7 +319,7 @@ class FormatEventTest(unittest.TestCase):
         #  Select 2 long lines.
         text.insert('1.0', self.multiline_test_string)
         text.tag_add('sel', '2.0', '4.0')
-        self.formatter('ParameterDoesNothing')
+        self.formatter('ParameterDoesNothing', limit=70)
         result = text.get('2.0', 'insert')
         expected = (
 "    The second line's length is way over the max width. It goes on and\n"
@@ -334,7 +334,7 @@ class FormatEventTest(unittest.TestCase):
 
         # Set cursor ('insert') to '1.0', within block.
         text.insert('1.0', self.multiline_test_comment)
-        self.formatter('ParameterDoesNothing')
+        self.formatter('ParameterDoesNothing', limit=70)
         result = text.get('1.0', 'insert')
         expected = (
 "# The first line is under the max width. The second line's length is\n"
@@ -348,7 +348,7 @@ class FormatEventTest(unittest.TestCase):
         # Select line 2, verify line 1 unaffected.
         text.insert('1.0', self.multiline_test_comment)
         text.tag_add('sel', '2.0', '3.0')
-        self.formatter('ParameterDoesNothing')
+        self.formatter('ParameterDoesNothing', limit=70)
         result = text.get('1.0', 'insert')
         expected = (
 "# The first line is under the max width.\n"
index 54546b444ed7dee6cc80616683ff33a460e21836..89167fb0fe92334e97876b2c9f3750d74719550a 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -289,6 +289,8 @@ Tools/Demos
 IDLE
 ----
 
+- Issue 21284: Paragraph reformat test passes after user changes reformat width.
+
 - Issue #20406: Use Python application icons for Idle window title bars.
   Patch mostly by Serhiy Storchaka.