summaryrefslogtreecommitdiffstats
path: root/Lib/tkinter/test
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/tkinter/test')
-rw-r--r--Lib/tkinter/test/test_tkinter/test_variables.py5
-rw-r--r--Lib/tkinter/test/test_ttk/test_extensions.py17
2 files changed, 15 insertions, 7 deletions
diff --git a/Lib/tkinter/test/test_tkinter/test_variables.py b/Lib/tkinter/test/test_tkinter/test_variables.py
index 1f74453..d8ba9ce 100644
--- a/Lib/tkinter/test/test_tkinter/test_variables.py
+++ b/Lib/tkinter/test/test_tkinter/test_variables.py
@@ -167,15 +167,14 @@ class TestIntVar(TestBase):
self.assertEqual(123, v.get())
self.root.globalsetvar("name", "345")
self.assertEqual(345, v.get())
+ self.root.globalsetvar("name", "876.5")
+ self.assertEqual(876, v.get())
def test_invalid_value(self):
v = IntVar(self.root, name="name")
self.root.globalsetvar("name", "value")
with self.assertRaises((ValueError, TclError)):
v.get()
- self.root.globalsetvar("name", "345.0")
- with self.assertRaises((ValueError, TclError)):
- v.get()
class TestDoubleVar(TestBase):
diff --git a/Lib/tkinter/test/test_ttk/test_extensions.py b/Lib/tkinter/test/test_ttk/test_extensions.py
index f33945c..218b27f 100644
--- a/Lib/tkinter/test/test_ttk/test_extensions.py
+++ b/Lib/tkinter/test/test_ttk/test_extensions.py
@@ -69,14 +69,12 @@ class LabeledScaleTest(AbstractTkTest, unittest.TestCase):
# variable initialization/passing
passed_expected = (('0', 0), (0, 0), (10, 10),
- (-1, -1), (sys.maxsize + 1, sys.maxsize + 1))
+ (-1, -1), (sys.maxsize + 1, sys.maxsize + 1),
+ (2.5, 2), ('2.5', 2))
for pair in passed_expected:
x = ttk.LabeledScale(self.root, from_=pair[0])
self.assertEqual(x.value, pair[1])
x.destroy()
- x = ttk.LabeledScale(self.root, from_='2.5')
- self.assertRaises((ValueError, tkinter.TclError), x._variable.get)
- x.destroy()
x = ttk.LabeledScale(self.root, from_=None)
self.assertRaises((ValueError, tkinter.TclError), x._variable.get)
x.destroy()
@@ -155,8 +153,10 @@ class LabeledScaleTest(AbstractTkTest, unittest.TestCase):
# The following update is needed since the test doesn't use mainloop,
# at the same time this shouldn't affect test outcome
x.update()
+ self.assertEqual(x.value, newval)
self.assertEqual(x.label['text'],
newval if self.wantobjects else str(newval))
+ self.assertEqual(float(x.scale.get()), newval)
self.assertGreater(x.scale.coords()[0], curr_xcoord)
self.assertEqual(x.scale.coords()[0],
int(x.label.place_info()['x']))
@@ -168,10 +168,19 @@ class LabeledScaleTest(AbstractTkTest, unittest.TestCase):
conv = int
x.value = conv(x.scale['to']) + 1 # no changes shouldn't happen
x.update()
+ self.assertEqual(x.value, newval)
self.assertEqual(conv(x.label['text']), newval)
+ self.assertEqual(float(x.scale.get()), newval)
self.assertEqual(x.scale.coords()[0],
int(x.label.place_info()['x']))
+ # non-integer value
+ x.value = newval = newval + 1.5
+ x.update()
+ self.assertEqual(x.value, int(newval))
+ self.assertEqual(conv(x.label['text']), int(newval))
+ self.assertEqual(float(x.scale.get()), newval)
+
x.destroy()