| "Test , coverage 17%." |
| |
| from idlelib import iomenu |
| import unittest |
| from test.support import requires |
| from tkinter import Tk |
| from idlelib.editor import EditorWindow |
| |
| |
| class IOBindingTest(unittest.TestCase): |
| |
| @classmethod |
| def setUpClass(cls): |
| requires('gui') |
| cls.root = Tk() |
| cls.root.withdraw() |
| cls.editwin = EditorWindow(root=cls.root) |
| cls.io = iomenu.IOBinding(cls.editwin) |
| |
| @classmethod |
| def tearDownClass(cls): |
| cls.io.close() |
| cls.editwin._close() |
| del cls.editwin |
| cls.root.update_idletasks() |
| for id in cls.root.tk.call('after', 'info'): |
| cls.root.after_cancel(id) # Need for EditorWindow. |
| cls.root.destroy() |
| del cls.root |
| |
| def test_init(self): |
| self.assertIs(self.io.editwin, self.editwin) |
| |
| def test_fixnewlines_end(self): |
| eq = self.assertEqual |
| io = self.io |
| fix = io.fixnewlines |
| text = io.editwin.text |
| self.editwin.interp = None |
| eq(fix(), '') |
| del self.editwin.interp |
| text.insert(1.0, 'a') |
| eq(fix(), 'a'+io.eol_convention) |
| eq(text.get('1.0', 'end-1c'), 'a\n') |
| eq(fix(), 'a'+io.eol_convention) |
| |
| |
| if __name__ == '__main__': |
| unittest.main(verbosity=2) |