X7ROOT File Manager
Current Path:
/opt/alt/python36/lib64/python3.6/idlelib/idle_test
opt
/
alt
/
python36
/
lib64
/
python3.6
/
idlelib
/
idle_test
/
ðŸ“
..
📄
README.txt
(8.52 KB)
📄
__init__.py
(712 B)
ðŸ“
__pycache__
📄
htest.py
(13.67 KB)
📄
mock_idle.py
(1.83 KB)
📄
mock_tk.py
(11.35 KB)
📄
template.py
(642 B)
📄
test_autocomplete.py
(4.99 KB)
📄
test_autocomplete_w.py
(709 B)
📄
test_autoexpand.py
(4.53 KB)
📄
test_browser.py
(7.8 KB)
📄
test_calltip.py
(7.6 KB)
📄
test_calltip_w.py
(686 B)
📄
test_codecontext.py
(14.15 KB)
📄
test_colorizer.py
(1.03 KB)
📄
test_config.py
(32.04 KB)
📄
test_config_key.py
(3.61 KB)
📄
test_configdialog.py
(48.6 KB)
📄
test_debugger.py
(571 B)
📄
test_debugger_r.py
(631 B)
📄
test_debugobj.py
(1.52 KB)
📄
test_debugobj_r.py
(545 B)
📄
test_delegator.py
(1.53 KB)
📄
test_editmenu.py
(2.5 KB)
📄
test_editor.py
(1.11 KB)
📄
test_filelist.py
(795 B)
📄
test_grep.py
(2.6 KB)
📄
test_help.py
(849 B)
📄
test_help_about.py
(5.68 KB)
📄
test_history.py
(5.39 KB)
📄
test_hyperparser.py
(8.87 KB)
📄
test_iomenu.py
(870 B)
📄
test_macosx.py
(3.23 KB)
📄
test_mainmenu.py
(594 B)
📄
test_multicall.py
(1.02 KB)
📄
test_outwin.py
(5.42 KB)
📄
test_paragraph.py
(14.02 KB)
📄
test_parenmatch.py
(3.43 KB)
📄
test_pathbrowser.py
(2.37 KB)
📄
test_percolator.py
(3.97 KB)
📄
test_pyparse.py
(18.15 KB)
📄
test_pyshell.py
(1.28 KB)
📄
test_query.py
(11.49 KB)
📄
test_redirector.py
(4.08 KB)
📄
test_replace.py
(8.11 KB)
📄
test_rpc.py
(805 B)
📄
test_rstrip.py
(1.57 KB)
📄
test_run.py
(9.19 KB)
📄
test_runscript.py
(777 B)
📄
test_scrolledlist.py
(496 B)
📄
test_search.py
(2.4 KB)
📄
test_searchbase.py
(5.35 KB)
📄
test_searchengine.py
(11.27 KB)
📄
test_squeezer.py
(21.35 KB)
📄
test_stackviewer.py
(1.18 KB)
📄
test_statusbar.py
(1.11 KB)
📄
test_text.py
(6.81 KB)
📄
test_textview.py
(5.5 KB)
📄
test_tooltip.py
(5.01 KB)
📄
test_tree.py
(792 B)
📄
test_undo.py
(4.13 KB)
📄
test_warning.py
(2.68 KB)
📄
test_window.py
(1.05 KB)
📄
test_zoomheight.py
(999 B)
Editing: test_parenmatch.py
"""Test parenmatch, coverage 91%. This must currently be a gui test because ParenMatch methods use several text methods not defined on idlelib.idle_test.mock_tk.Text. """ from idlelib.parenmatch import ParenMatch from test.support import requires requires('gui') import unittest from unittest.mock import Mock from tkinter import Tk, Text class DummyEditwin: def __init__(self, text): self.text = text self.indentwidth = 8 self.tabwidth = 8 self.context_use_ps1 = True class ParenMatchTest(unittest.TestCase): @classmethod def setUpClass(cls): cls.root = Tk() cls.root.withdraw() cls.text = Text(cls.root) cls.editwin = DummyEditwin(cls.text) cls.editwin.text_frame = Mock() @classmethod def tearDownClass(cls): del cls.text, cls.editwin cls.root.update_idletasks() cls.root.destroy() del cls.root def tearDown(self): self.text.delete('1.0', 'end') def get_parenmatch(self): pm = ParenMatch(self.editwin) pm.bell = lambda: None return pm def test_paren_styles(self): """ Test ParenMatch with each style. """ text = self.text pm = self.get_parenmatch() for style, range1, range2 in ( ('opener', ('1.10', '1.11'), ('1.10', '1.11')), ('default',('1.10', '1.11'),('1.10', '1.11')), ('parens', ('1.14', '1.15'), ('1.15', '1.16')), ('expression', ('1.10', '1.15'), ('1.10', '1.16'))): with self.subTest(style=style): text.delete('1.0', 'end') pm.STYLE = style text.insert('insert', 'def foobar(a, b') pm.flash_paren_event('event') self.assertIn('<<parenmatch-check-restore>>', text.event_info()) if style == 'parens': self.assertTupleEqual(text.tag_nextrange('paren', '1.0'), ('1.10', '1.11')) self.assertTupleEqual( text.tag_prevrange('paren', 'end'), range1) text.insert('insert', ')') pm.restore_event() self.assertNotIn('<<parenmatch-check-restore>>', text.event_info()) self.assertEqual(text.tag_prevrange('paren', 'end'), ()) pm.paren_closed_event('event') self.assertTupleEqual( text.tag_prevrange('paren', 'end'), range2) def test_paren_corner(self): """ Test corner cases in flash_paren_event and paren_closed_event. These cases force conditional expression and alternate paths. """ text = self.text pm = self.get_parenmatch() text.insert('insert', '# this is a commen)') pm.paren_closed_event('event') text.insert('insert', '\ndef') pm.flash_paren_event('event') pm.paren_closed_event('event') text.insert('insert', ' a, *arg)') pm.paren_closed_event('event') def test_handle_restore_timer(self): pm = self.get_parenmatch() pm.restore_event = Mock() pm.handle_restore_timer(0) self.assertTrue(pm.restore_event.called) pm.restore_event.reset_mock() pm.handle_restore_timer(1) self.assertFalse(pm.restore_event.called) if __name__ == '__main__': unittest.main(verbosity=2)
Upload File
Create Folder