mirror of
https://github.com/python/cpython.git
synced 2025-07-24 03:35:53 +00:00
bpo-34829: Add missing selection_ methods to the Tkinter Spinbox. (GH-9617)
Implement the methods selection_from(), selection_range(), selection_present() and selection_to() for Tkinter Spinbox.
This commit is contained in:
parent
a8d5e2f255
commit
af5658ae93
5 changed files with 82 additions and 0 deletions
|
@ -377,6 +377,31 @@ class EntryTest(AbstractWidgetTest, unittest.TestCase):
|
|||
self.checkCommandParam(widget, 'validatecommand')
|
||||
self.checkCommandParam(widget, 'vcmd')
|
||||
|
||||
def test_selection_methods(self):
|
||||
widget = self.create()
|
||||
widget.insert(0, '12345')
|
||||
self.assertFalse(widget.selection_present())
|
||||
widget.selection_range(0, 'end')
|
||||
self.assertEqual(widget.selection_get(), '12345')
|
||||
self.assertTrue(widget.selection_present())
|
||||
widget.selection_from(1)
|
||||
widget.selection_to(2)
|
||||
self.assertEqual(widget.selection_get(), '2')
|
||||
widget.selection_range(3, 4)
|
||||
self.assertEqual(widget.selection_get(), '4')
|
||||
widget.selection_clear()
|
||||
self.assertFalse(widget.selection_present())
|
||||
widget.selection_range(0, 'end')
|
||||
widget.selection_adjust(4)
|
||||
self.assertEqual(widget.selection_get(), '1234')
|
||||
widget.selection_adjust(1)
|
||||
self.assertEqual(widget.selection_get(), '234')
|
||||
widget.selection_adjust(5)
|
||||
self.assertEqual(widget.selection_get(), '2345')
|
||||
widget.selection_adjust(0)
|
||||
self.assertEqual(widget.selection_get(), '12345')
|
||||
widget.selection_adjust(0)
|
||||
|
||||
|
||||
@add_standard_options(StandardOptionsTests)
|
||||
class SpinboxTest(EntryTest, unittest.TestCase):
|
||||
|
@ -474,6 +499,31 @@ class SpinboxTest(EntryTest, unittest.TestCase):
|
|||
self.assertRaises(TypeError, widget.bbox)
|
||||
self.assertRaises(TypeError, widget.bbox, 0, 1)
|
||||
|
||||
def test_selection_methods(self):
|
||||
widget = self.create()
|
||||
widget.insert(0, '12345')
|
||||
self.assertFalse(widget.selection_present())
|
||||
widget.selection_range(0, 'end')
|
||||
self.assertEqual(widget.selection_get(), '12345')
|
||||
self.assertTrue(widget.selection_present())
|
||||
widget.selection_from(1)
|
||||
widget.selection_to(2)
|
||||
self.assertEqual(widget.selection_get(), '2')
|
||||
widget.selection_range(3, 4)
|
||||
self.assertEqual(widget.selection_get(), '4')
|
||||
widget.selection_clear()
|
||||
self.assertFalse(widget.selection_present())
|
||||
widget.selection_range(0, 'end')
|
||||
widget.selection_adjust(4)
|
||||
self.assertEqual(widget.selection_get(), '1234')
|
||||
widget.selection_adjust(1)
|
||||
self.assertEqual(widget.selection_get(), '234')
|
||||
widget.selection_adjust(5)
|
||||
self.assertEqual(widget.selection_get(), '2345')
|
||||
widget.selection_adjust(0)
|
||||
self.assertEqual(widget.selection_get(), '12345')
|
||||
widget.selection_adjust(0)
|
||||
|
||||
|
||||
@add_standard_options(StandardOptionsTests)
|
||||
class TextTest(AbstractWidgetTest, unittest.TestCase):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue