Some tests for Tkinter.Text.search

This commit is contained in:
Guilherme Polo 2009-02-09 19:21:21 +00:00
parent 94034ea584
commit bbb7efd72b
4 changed files with 68 additions and 0 deletions

View File

View File

@ -0,0 +1,39 @@
import unittest
import Tkinter
from test.test_support import requires, run_unittest
from 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)

View File

@ -1047,6 +1047,7 @@ _expectations = {
test_socket_ssl test_socket_ssl
test_socketserver test_socketserver
test_tcl test_tcl
test_tk
test_ttk_guionly test_ttk_guionly
test_ttk_textonly test_ttk_textonly
test_timeout test_timeout
@ -1066,6 +1067,7 @@ _expectations = {
test_kqueue test_kqueue
test_ossaudiodev test_ossaudiodev
test_tcl test_tcl
test_tk
test_ttk_guionly test_ttk_guionly
test_ttk_textonly test_ttk_textonly
test_zipimport test_zipimport
@ -1084,6 +1086,7 @@ _expectations = {
test_ossaudiodev test_ossaudiodev
test_pep277 test_pep277
test_tcl test_tcl
test_tk
test_ttk_guionly test_ttk_guionly
test_ttk_textonly test_ttk_textonly
test_multiprocessing test_multiprocessing
@ -1102,6 +1105,7 @@ _expectations = {
test_ossaudiodev test_ossaudiodev
test_pep277 test_pep277
test_tcl test_tcl
test_tk
test_ttk_guionly test_ttk_guionly
test_ttk_textonly test_ttk_textonly
test_multiprocessing test_multiprocessing

25
Lib/test/test_tk.py Normal file
View File

@ -0,0 +1,25 @@
import os
import sys
from _tkinter import TclError
from test import test_support
this_dir = os.path.dirname(os.path.abspath(__file__))
lib_tk_test = os.path.abspath(os.path.join(this_dir, os.path.pardir,
'lib-tk', 'test'))
if lib_tk_test not in sys.path:
sys.path.append(lib_tk_test)
import runtktests
def test_main(enable_gui=False):
if enable_gui:
if test_support.use_resources is None:
test_support.use_resources = ['gui']
elif 'gui' not in test_support.use_resources:
test_support.use_resources.append('gui')
test_support.run_unittest(
*runtktests.get_tests(text=False, packages=['test_tkinter']))
if __name__ == '__main__':
test_main(enable_gui=True)