Linux cpanel.rrshost.in 5.15.0-25-generic #25-Ubuntu SMP Wed Mar 30 15:54:22 UTC 2022 x86_64
Apache
: 109.123.238.221 | : 172.69.214.121
128 Domain
8.2.28
aev999
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
usr /
lib /
mysqlsh /
lib /
python3.13 /
idlelib /
idle_test /
[ HOME SHELL ]
Name
Size
Permission
Action
README.txt
8.67
KB
-rw-r--r--
__init__.py
1.22
KB
-rw-r--r--
example_noext
68
B
-rw-r--r--
example_stub.pyi
164
B
-rw-r--r--
htest.py
14.95
KB
-rw-r--r--
mock_idle.py
1.9
KB
-rw-r--r--
mock_tk.py
11.42
KB
-rw-r--r--
template.py
642
B
-rw-r--r--
test_autocomplete.py
10.83
KB
-rw-r--r--
test_autocomplete_w.py
720
B
-rw-r--r--
test_autoexpand.py
4.53
KB
-rw-r--r--
test_browser.py
8.22
KB
-rw-r--r--
test_calltip.py
13.34
KB
-rw-r--r--
test_calltip_w.py
686
B
-rw-r--r--
test_codecontext.py
15.71
KB
-rw-r--r--
test_colorizer.py
22.35
KB
-rw-r--r--
test_config.py
31.34
KB
-rw-r--r--
test_config_key.py
11.19
KB
-rw-r--r--
test_configdialog.py
54.09
KB
-rw-r--r--
test_debugger.py
9.5
KB
-rw-r--r--
test_debugger_r.py
965
B
-rw-r--r--
test_debugobj.py
1.57
KB
-rw-r--r--
test_debugobj_r.py
545
B
-rw-r--r--
test_delegator.py
1.53
KB
-rw-r--r--
test_editmenu.py
2.5
KB
-rw-r--r--
test_editor.py
7.96
KB
-rw-r--r--
test_filelist.py
795
B
-rw-r--r--
test_format.py
23.06
KB
-rw-r--r--
test_grep.py
4.95
KB
-rw-r--r--
test_help.py
863
B
-rw-r--r--
test_help_about.py
5.77
KB
-rw-r--r--
test_history.py
5.39
KB
-rw-r--r--
test_hyperparser.py
8.87
KB
-rw-r--r--
test_iomenu.py
2.4
KB
-rw-r--r--
test_macosx.py
3.36
KB
-rw-r--r--
test_mainmenu.py
1.6
KB
-rw-r--r--
test_multicall.py
1.29
KB
-rw-r--r--
test_outwin.py
5.54
KB
-rw-r--r--
test_parenmatch.py
3.46
KB
-rw-r--r--
test_pathbrowser.py
2.37
KB
-rw-r--r--
test_percolator.py
3.97
KB
-rw-r--r--
test_pyparse.py
18.91
KB
-rw-r--r--
test_pyshell.py
4.85
KB
-rw-r--r--
test_query.py
15.09
KB
-rw-r--r--
test_redirector.py
4.08
KB
-rw-r--r--
test_replace.py
8.1
KB
-rw-r--r--
test_rpc.py
805
B
-rw-r--r--
test_run.py
15.48
KB
-rw-r--r--
test_runscript.py
777
B
-rw-r--r--
test_scrolledlist.py
496
B
-rw-r--r--
test_search.py
2.4
KB
-rw-r--r--
test_searchbase.py
5.56
KB
-rw-r--r--
test_searchengine.py
11.32
KB
-rw-r--r--
test_sidebar.py
26.22
KB
-rw-r--r--
test_squeezer.py
19.2
KB
-rw-r--r--
test_stackviewer.py
991
B
-rw-r--r--
test_statusbar.py
1.11
KB
-rw-r--r--
test_text.py
6.81
KB
-rw-r--r--
test_textview.py
7.19
KB
-rw-r--r--
test_tooltip.py
5.26
KB
-rw-r--r--
test_tree.py
1.71
KB
-rw-r--r--
test_undo.py
4.13
KB
-rw-r--r--
test_util.py
308
B
-rw-r--r--
test_warning.py
2.68
KB
-rw-r--r--
test_window.py
1.05
KB
-rw-r--r--
test_zoomheight.py
999
B
-rw-r--r--
test_zzdummy.py
4.35
KB
-rw-r--r--
tkinter_testing_utils.py
2.28
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : test_browser.py
"Test browser, coverage 90%." from idlelib import browser from test.support import requires import unittest from unittest import mock from idlelib.idle_test.mock_idle import Func from idlelib.util import py_extensions from collections import deque import os.path import pyclbr from tkinter import Tk from idlelib.tree import TreeNode class ModuleBrowserTest(unittest.TestCase): @classmethod def setUpClass(cls): requires('gui') cls.root = Tk() cls.root.withdraw() cls.mb = browser.ModuleBrowser(cls.root, __file__, _utest=True) @classmethod def tearDownClass(cls): cls.mb.close() cls.root.update_idletasks() cls.root.destroy() del cls.root, cls.mb def test_init(self): mb = self.mb eq = self.assertEqual eq(mb.path, __file__) eq(pyclbr._modules, {}) self.assertIsInstance(mb.node, TreeNode) self.assertIsNotNone(browser.file_open) def test_settitle(self): mb = self.mb self.assertIn(os.path.basename(__file__), mb.top.title()) self.assertEqual(mb.top.iconname(), 'Module Browser') def test_rootnode(self): mb = self.mb rn = mb.rootnode() self.assertIsInstance(rn, browser.ModuleBrowserTreeItem) def test_close(self): mb = self.mb mb.top.destroy = Func() mb.node.destroy = Func() mb.close() self.assertTrue(mb.top.destroy.called) self.assertTrue(mb.node.destroy.called) del mb.top.destroy, mb.node.destroy def test_is_browseable_extension(self): path = "/path/to/file" for ext in py_extensions: with self.subTest(ext=ext): filename = f'{path}{ext}' actual = browser.is_browseable_extension(filename) expected = ext not in browser.browseable_extension_blocklist self.assertEqual(actual, expected) # Nested tree same as in test_pyclbr.py except for supers on C0. C1. mb = pyclbr module, fname = 'test', 'test.py' C0 = mb.Class(module, 'C0', ['base'], fname, 1, end_lineno=9) F1 = mb._nest_function(C0, 'F1', 3, 5) C1 = mb._nest_class(C0, 'C1', 6, 9, ['']) C2 = mb._nest_class(C1, 'C2', 7, 9) F3 = mb._nest_function(C2, 'F3', 9, 9) f0 = mb.Function(module, 'f0', fname, 11, end_lineno=15) f1 = mb._nest_function(f0, 'f1', 12, 14) f2 = mb._nest_function(f1, 'f2', 13, 13) c1 = mb._nest_class(f0, 'c1', 15, 15) mock_pyclbr_tree = {'C0': C0, 'f0': f0} # Adjust C0.name, C1.name so tests do not depend on order. browser.transform_children(mock_pyclbr_tree, 'test') # C0(base) browser.transform_children(C0.children) # C1() # The class below checks that the calls above are correct # and that duplicate calls have no effect. class TransformChildrenTest(unittest.TestCase): def test_transform_module_children(self): eq = self.assertEqual transform = browser.transform_children # Parameter matches tree module. tcl = list(transform(mock_pyclbr_tree, 'test')) eq(tcl, [C0, f0]) eq(tcl[0].name, 'C0(base)') eq(tcl[1].name, 'f0') # Check that second call does not change suffix. tcl = list(transform(mock_pyclbr_tree, 'test')) eq(tcl[0].name, 'C0(base)') # Nothing to traverse if parameter name isn't same as tree module. tcl = list(transform(mock_pyclbr_tree, 'different name')) eq(tcl, []) def test_transform_node_children(self): eq = self.assertEqual transform = browser.transform_children # Class with two children, one name altered. tcl = list(transform(C0.children)) eq(tcl, [F1, C1]) eq(tcl[0].name, 'F1') eq(tcl[1].name, 'C1()') tcl = list(transform(C0.children)) eq(tcl[1].name, 'C1()') # Function with two children. eq(list(transform(f0.children)), [f1, c1]) class ModuleBrowserTreeItemTest(unittest.TestCase): @classmethod def setUpClass(cls): cls.mbt = browser.ModuleBrowserTreeItem(fname) def test_init(self): self.assertEqual(self.mbt.file, fname) def test_gettext(self): self.assertEqual(self.mbt.GetText(), fname) def test_geticonname(self): self.assertEqual(self.mbt.GetIconName(), 'python') def test_isexpandable(self): self.assertTrue(self.mbt.IsExpandable()) def test_listchildren(self): save_rex = browser.pyclbr.readmodule_ex save_tc = browser.transform_children browser.pyclbr.readmodule_ex = Func(result=mock_pyclbr_tree) browser.transform_children = Func(result=[f0, C0]) try: self.assertEqual(self.mbt.listchildren(), [f0, C0]) finally: browser.pyclbr.readmodule_ex = save_rex browser.transform_children = save_tc def test_getsublist(self): mbt = self.mbt mbt.listchildren = Func(result=[f0, C0]) sub0, sub1 = mbt.GetSubList() del mbt.listchildren self.assertIsInstance(sub0, browser.ChildBrowserTreeItem) self.assertIsInstance(sub1, browser.ChildBrowserTreeItem) self.assertEqual(sub0.name, 'f0') self.assertEqual(sub1.name, 'C0(base)') @mock.patch('idlelib.browser.file_open') def test_ondoubleclick(self, fopen): mbt = self.mbt with mock.patch('os.path.exists', return_value=False): mbt.OnDoubleClick() fopen.assert_not_called() with mock.patch('os.path.exists', return_value=True): mbt.OnDoubleClick() fopen.assert_called_once_with(fname) class ChildBrowserTreeItemTest(unittest.TestCase): @classmethod def setUpClass(cls): CBT = browser.ChildBrowserTreeItem cls.cbt_f1 = CBT(f1) cls.cbt_C1 = CBT(C1) cls.cbt_F1 = CBT(F1) @classmethod def tearDownClass(cls): del cls.cbt_C1, cls.cbt_f1, cls.cbt_F1 def test_init(self): eq = self.assertEqual eq(self.cbt_C1.name, 'C1()') self.assertFalse(self.cbt_C1.isfunction) eq(self.cbt_f1.name, 'f1') self.assertTrue(self.cbt_f1.isfunction) def test_gettext(self): self.assertEqual(self.cbt_C1.GetText(), 'class C1()') self.assertEqual(self.cbt_f1.GetText(), 'def f1(...)') def test_geticonname(self): self.assertEqual(self.cbt_C1.GetIconName(), 'folder') self.assertEqual(self.cbt_f1.GetIconName(), 'python') def test_isexpandable(self): self.assertTrue(self.cbt_C1.IsExpandable()) self.assertTrue(self.cbt_f1.IsExpandable()) self.assertFalse(self.cbt_F1.IsExpandable()) def test_getsublist(self): eq = self.assertEqual CBT = browser.ChildBrowserTreeItem f1sublist = self.cbt_f1.GetSubList() self.assertIsInstance(f1sublist[0], CBT) eq(len(f1sublist), 1) eq(f1sublist[0].name, 'f2') eq(self.cbt_F1.GetSubList(), []) @mock.patch('idlelib.browser.file_open') def test_ondoubleclick(self, fopen): goto = fopen.return_value.gotoline = mock.Mock() self.cbt_F1.OnDoubleClick() fopen.assert_called() goto.assert_called() goto.assert_called_with(self.cbt_F1.obj.lineno) # Failure test would have to raise OSError or AttributeError. class NestedChildrenTest(unittest.TestCase): "Test that all the nodes in a nested tree are added to the BrowserTree." def test_nested(self): queue = deque() actual_names = [] # The tree items are processed in breadth first order. # Verify that processing each sublist hits every node and # in the right order. expected_names = ['f0', 'C0(base)', 'f1', 'c1', 'F1', 'C1()', 'f2', 'C2', 'F3'] CBT = browser.ChildBrowserTreeItem queue.extend((CBT(f0), CBT(C0))) while queue: cb = queue.popleft() sublist = cb.GetSubList() queue.extend(sublist) self.assertIn(cb.name, cb.GetText()) self.assertIn(cb.GetIconName(), ('python', 'folder')) self.assertIs(cb.IsExpandable(), sublist != []) actual_names.append(cb.name) self.assertEqual(actual_names, expected_names) if __name__ == '__main__': unittest.main(verbosity=2)
Close