diff -r c8c9971bdc53 Lib/idlelib/PathBrowser.py --- a/Lib/idlelib/PathBrowser.py Thu Feb 27 18:48:13 2014 -0500 +++ b/Lib/idlelib/PathBrowser.py Fri Feb 28 19:51:42 2014 +0530 @@ -88,11 +88,24 @@ return sorted def main(): - from idlelib import PyShell - PathBrowser(PyShell.flist) + """Run the dialog""" + from idlelib.PyShell import PyShell, PyShellFileList + from tkinter import Tk, Button + root = Tk() + root.title('PathBrowser Test Dialog') + root.geometry("%dx%d%+d%+d" % (275, 25, 50, 50)) + flist = PyShellFileList(root) + + def run(): + PathBrowser(flist) + + Button(root, text='Path Browser', command=run).pack() if sys.stdin is sys.__stdin__: - mainloop() + root.mainloop() if __name__ == "__main__": + """Run the dialog and its tests""" + main() from unittest import main main('idlelib.idle_test.test_pathbrowser', verbosity=2, exit=False) + diff -r c8c9971bdc53 Lib/idlelib/idle_test/test_pathbrowser.py --- a/Lib/idlelib/idle_test/test_pathbrowser.py Thu Feb 27 18:48:13 2014 -0500 +++ b/Lib/idlelib/idle_test/test_pathbrowser.py Fri Feb 28 19:51:42 2014 +0530 @@ -1,4 +1,7 @@ import unittest +import os +import sys +import idlelib import idlelib.PathBrowser as PathBrowser class PathBrowserTest(unittest.TestCase): @@ -8,5 +11,16 @@ d = PathBrowser.DirBrowserTreeItem('') d.GetSubList() + self.assertEqual('', d.GetText()) + + dir = os.path.split(os.path.abspath(idlelib.__file__))[0] + self.assertEqual(d.ispackagedir(dir), True) + self.assertEqual(d.ispackagedir(dir + '/Icons'), 0) + + def test_PathBrowserTreeItem(self): + p = PathBrowser.PathBrowserTreeItem() + self.assertEqual(p.GetText(), 'sys.path') + self.assertEqual(len(p.GetSubList()), len(sys.path)) + if __name__ == '__main__': unittest.main(verbosity=2, exit=False)