changeset: 90426:fe067339af80 branch: 3.4 parent: 90423:72fe23edfec6 user: Terry Jan Reedy date: Tue Apr 22 01:11:03 2014 -0400 files: Lib/idlelib/FormatParagraph.py Lib/idlelib/idle_test/test_formatparagraph.py Misc/NEWS description: Issue 21284: Idle: make test_formatparagraph pass even when a user changes the reformat width in the configuration menu. diff -r 72fe23edfec6 -r fe067339af80 Lib/idlelib/FormatParagraph.py --- a/Lib/idlelib/FormatParagraph.py Sun Apr 20 09:44:11 2014 -0700 +++ b/Lib/idlelib/FormatParagraph.py Tue Apr 22 01:11:03 2014 -0400 @@ -32,7 +32,7 @@ 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 @@ 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 @@ 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: diff -r 72fe23edfec6 -r fe067339af80 Lib/idlelib/idle_test/test_formatparagraph.py --- a/Lib/idlelib/idle_test/test_formatparagraph.py Sun Apr 20 09:44:11 2014 -0700 +++ b/Lib/idlelib/idle_test/test_formatparagraph.py Tue Apr 22 01:11:03 2014 -0400 @@ -293,7 +293,7 @@ # 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 @@ # 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 @@ # 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 @@ # 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 @@ # 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" diff -r 72fe23edfec6 -r fe067339af80 Misc/NEWS --- a/Misc/NEWS Sun Apr 20 09:44:11 2014 -0700 +++ b/Misc/NEWS Tue Apr 22 01:11:03 2014 -0400 @@ -186,6 +186,8 @@ IDLE ---- +- Issue 21284: Paragraph reformat test passes after user changes reformat width. + - Issue #17654: Ensure IDLE menus are customized properly on OS X for non-framework builds and for all variants of Tk.