mirror of
https://github.com/python/cpython.git
synced 2025-08-04 08:59:19 +00:00
Merged revisions 69460,69467,69470 via svnmerge from
svn+ssh://pythondev/python/trunk ........ r69460 | guilherme.polo | 2009-02-09 14:09:17 -0200 (Mon, 09 Feb 2009) | 1 line Turned setup_master public ........ r69467 | guilherme.polo | 2009-02-09 17:21:21 -0200 (Mon, 09 Feb 2009) | 2 lines Some tests for Tkinter.Text.search ........ r69470 | guilherme.polo | 2009-02-09 17:57:04 -0200 (Mon, 09 Feb 2009) | 1 line Checking for tk availability before continuing (basically the same that is done in test_ttk_guionly) ........
This commit is contained in:
parent
87ec0855c6
commit
a91790a5b0
5 changed files with 84 additions and 21 deletions
0
Lib/tkinter/test/test_tkinter/__init__.py
Normal file
0
Lib/tkinter/test/test_tkinter/__init__.py
Normal file
39
Lib/tkinter/test/test_tkinter/test_text.py
Normal file
39
Lib/tkinter/test/test_tkinter/test_text.py
Normal file
|
@ -0,0 +1,39 @@
|
|||
import unittest
|
||||
import tkinter
|
||||
from test.support import requires, run_unittest
|
||||
from tkinter.ttk import setup_master
|
||||
|
||||
requires('gui')
|
||||
|
||||
class TextTest(unittest.TestCase):
|
||||
|
||||
def setUp(self):
|
||||
self.root = setup_master()
|
||||
self.text = tkinter.Text(self.root)
|
||||
|
||||
def tearDown(self):
|
||||
self.text.destroy()
|
||||
|
||||
|
||||
def test_search(self):
|
||||
text = self.text
|
||||
|
||||
# pattern and index are obligatory arguments.
|
||||
self.failUnlessRaises(tkinter.TclError, text.search, None, '1.0')
|
||||
self.failUnlessRaises(tkinter.TclError, text.search, 'a', None)
|
||||
self.failUnlessRaises(tkinter.TclError, text.search, None, None)
|
||||
|
||||
# Invalid text index.
|
||||
self.failUnlessRaises(tkinter.TclError, text.search, '', 0)
|
||||
|
||||
# Check if we are getting the indices as strings -- you are likely
|
||||
# to get Tcl_Obj under Tk 8.5 if Tkinter doesn't convert it.
|
||||
text.insert('1.0', 'hi-test')
|
||||
self.failUnlessEqual(text.search('-test', '1.0', 'end'), '1.2')
|
||||
self.failUnlessEqual(text.search('test', '1.0', 'end'), '1.3')
|
||||
|
||||
|
||||
tests_gui = (TextTest, )
|
||||
|
||||
if __name__ == "__main__":
|
||||
run_unittest(*tests_gui)
|
|
@ -23,7 +23,7 @@ __all__ = ["Button", "Checkbutton", "Combobox", "Entry", "Frame", "Label",
|
|||
# Extensions
|
||||
"LabeledScale", "OptionMenu",
|
||||
# functions
|
||||
"tclobjs_to_py"]
|
||||
"tclobjs_to_py", "setup_master"]
|
||||
|
||||
import tkinter
|
||||
|
||||
|
@ -47,24 +47,6 @@ def _load_tile(master):
|
|||
master.tk.eval('package require tile') # TclError may be raised here
|
||||
master._tile_loaded = True
|
||||
|
||||
|
||||
def _setup_master(master=None):
|
||||
"""If master is not None, itself is returned. If master is None,
|
||||
the default master is returned if there is one, otherwise a new
|
||||
master is created and returned.
|
||||
|
||||
If it is not allowed to use the default root and master is None,
|
||||
RuntimeError is raised."""
|
||||
if master is None:
|
||||
if tkinter._support_default_root:
|
||||
master = tkinter._default_root or tkinter.Tk()
|
||||
else:
|
||||
raise RuntimeError(
|
||||
"No master specified and tkinter is "
|
||||
"configured to not support default root")
|
||||
return master
|
||||
|
||||
|
||||
def _format_optdict(optdict, script=False, ignore=None):
|
||||
"""Formats optdict to a tuple to pass it to tk.call.
|
||||
|
||||
|
@ -367,6 +349,22 @@ def tclobjs_to_py(adict):
|
|||
|
||||
return adict
|
||||
|
||||
def setup_master(master=None):
|
||||
"""If master is not None, itself is returned. If master is None,
|
||||
the default master is returned if there is one, otherwise a new
|
||||
master is created and returned.
|
||||
|
||||
If it is not allowed to use the default root and master is None,
|
||||
RuntimeError is raised."""
|
||||
if master is None:
|
||||
if tkinter._support_default_root:
|
||||
master = tkinter._default_root or tkinter.Tk()
|
||||
else:
|
||||
raise RuntimeError(
|
||||
"No master specified and tkinter is "
|
||||
"configured to not support default root")
|
||||
return master
|
||||
|
||||
|
||||
class Style(object):
|
||||
"""Manipulate style database."""
|
||||
|
@ -374,7 +372,7 @@ class Style(object):
|
|||
_name = "ttk::style"
|
||||
|
||||
def __init__(self, master=None):
|
||||
master = _setup_master(master)
|
||||
master = setup_master(master)
|
||||
|
||||
if not getattr(master, '_tile_loaded', False):
|
||||
# Load tile now, if needed
|
||||
|
@ -555,7 +553,7 @@ class Widget(tkinter.Widget):
|
|||
active, disabled, focus, pressed, selected, background,
|
||||
readonly, alternate, invalid
|
||||
"""
|
||||
master = _setup_master(master)
|
||||
master = setup_master(master)
|
||||
if not getattr(master, '_tile_loaded', False):
|
||||
# Load tile now, if needed
|
||||
_load_tile(master)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue