mirror of https://github.com/python/cpython
bpo-45496: Allow flexibility in winfo_rgb tests (GH-30185)
This commit is contained in:
parent
ad4857884b
commit
2e3e0d23ad
|
@ -201,6 +201,13 @@ class MiscTest(AbstractTkTest, unittest.TestCase):
|
|||
root.clipboard_get()
|
||||
|
||||
def test_winfo_rgb(self):
|
||||
|
||||
def assertApprox(col1, col2):
|
||||
# A small amount of flexibility is required (bpo-45496)
|
||||
# 33 is ~0.05% of 65535, which is a reasonable margin
|
||||
for col1_channel, col2_channel in zip(col1, col2):
|
||||
self.assertAlmostEqual(col1_channel, col2_channel, delta=33)
|
||||
|
||||
root = self.root
|
||||
rgb = root.winfo_rgb
|
||||
|
||||
|
@ -210,9 +217,9 @@ class MiscTest(AbstractTkTest, unittest.TestCase):
|
|||
# #RGB - extends each 4-bit hex value to be 16-bit.
|
||||
self.assertEqual(rgb('#F0F'), (0xFFFF, 0x0000, 0xFFFF))
|
||||
# #RRGGBB - extends each 8-bit hex value to be 16-bit.
|
||||
self.assertEqual(rgb('#4a3c8c'), (0x4a4a, 0x3c3c, 0x8c8c))
|
||||
assertApprox(rgb('#4a3c8c'), (0x4a4a, 0x3c3c, 0x8c8c))
|
||||
# #RRRRGGGGBBBB
|
||||
self.assertEqual(rgb('#dede14143939'), (0xdede, 0x1414, 0x3939))
|
||||
assertApprox(rgb('#dede14143939'), (0xdede, 0x1414, 0x3939))
|
||||
# Invalid string.
|
||||
with self.assertRaises(tkinter.TclError):
|
||||
rgb('#123456789a')
|
||||
|
|
Loading…
Reference in New Issue