aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Lib/idlelib/idle_test/test_format.py
diff options
context:
space:
mode:
authorTerry Jan Reedy <tjreedy@udel.edu>2019-07-17 20:48:36 -0400
committerGitHub <noreply@github.com>2019-07-17 20:48:36 -0400
commit1b3892243433da7eae7f5f3a4f98f13d309c8926 (patch)
tree6d05c4527da31afb91c11e551a949666012f26fd /Lib/idlelib/idle_test/test_format.py
parent8cb65d1381b027f0b09ee36bfed7f35bb4dec9a9 (diff)
downloadcpython-1b3892243433da7eae7f5f3a4f98f13d309c8926.tar.gz
cpython-1b3892243433da7eae7f5f3a4f98f13d309c8926.zip
bpo-36390: Gather IDLE Format menu functions into format.py (#14827)
Add two indent spec methods from editor and Rstrip to existing file. Tests are not added for indent methods because they need change in lights of 3.x's prohibition on mixing tabs and spaces.
Diffstat (limited to 'Lib/idlelib/idle_test/test_format.py')
-rw-r--r--Lib/idlelib/idle_test/test_format.py46
1 files changed, 46 insertions, 0 deletions
diff --git a/Lib/idlelib/idle_test/test_format.py b/Lib/idlelib/idle_test/test_format.py
index a2d27ed69dd..c7b123e9d51 100644
--- a/Lib/idlelib/idle_test/test_format.py
+++ b/Lib/idlelib/idle_test/test_format.py
@@ -6,6 +6,7 @@ from unittest import mock
from test.support import requires
from tkinter import Tk, Text
from idlelib.editor import EditorWindow
+from idlelib.idle_test.mock_idle import Editor as MockEditor
class Is_Get_Test(unittest.TestCase):
@@ -573,5 +574,50 @@ class C1():
self.assertEqual(ask(), 10)
+class rstripTest(unittest.TestCase):
+
+ def test_rstrip_line(self):
+ editor = MockEditor()
+ text = editor.text
+ do_rstrip = ft.Rstrip(editor).do_rstrip
+ eq = self.assertEqual
+
+ do_rstrip()
+ eq(text.get('1.0', 'insert'), '')
+ text.insert('1.0', ' ')
+ do_rstrip()
+ eq(text.get('1.0', 'insert'), '')
+ text.insert('1.0', ' \n')
+ do_rstrip()
+ eq(text.get('1.0', 'insert'), '\n')
+
+ def test_rstrip_multiple(self):
+ editor = MockEditor()
+ # Comment above, uncomment 3 below to test with real Editor & Text.
+ #from idlelib.editor import EditorWindow as Editor
+ #from tkinter import Tk
+ #editor = Editor(root=Tk())
+ text = editor.text
+ do_rstrip = ft.Rstrip(editor).do_rstrip
+
+ original = (
+ "Line with an ending tab \n"
+ "Line ending in 5 spaces \n"
+ "Linewithnospaces\n"
+ " indented line\n"
+ " indented line with trailing space \n"
+ " ")
+ stripped = (
+ "Line with an ending tab\n"
+ "Line ending in 5 spaces\n"
+ "Linewithnospaces\n"
+ " indented line\n"
+ " indented line with trailing space\n")
+
+ text.insert('1.0', original)
+ do_rstrip()
+ self.assertEqual(text.get('1.0', 'insert'), stripped)
+
+
if __name__ == '__main__':
unittest.main(verbosity=2, exit=2)