summaryrefslogtreecommitdiff
path: root/Lib/tkinter/test/test_tkinter/test_font.py
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2022-06-22 22:23:37 +0200
committerGitHub <noreply@github.com>2022-06-22 22:23:37 +0200
commitc1fb12e5afa09aca3134a9bc0116c31dbcccc5e9 (patch)
tree0e730c9d6f9275d2870910a28be48d0bc3a5d9af /Lib/tkinter/test/test_tkinter/test_font.py
parent47e35625ff2c4e6511a12e7178c3e4fbc965b634 (diff)
downloadcpython-git-c1fb12e5afa09aca3134a9bc0116c31dbcccc5e9.tar.gz
gh-54781: Move Lib/tkinter/test/test_ttk/ to Lib/test/test_ttk/ (#94070)
* Move Lib/tkinter/test/test_tkinter/ to Lib/test/test_tkinter/. * Move Lib/tkinter/test/test_ttk/ to Lib/test/test_ttk/. * Add Lib/test/test_ttk/__init__.py based on test_ttk_guionly.py. * Add Lib/test/test_tkinter/__init__.py * Remove old Lib/test/test_tk.py. * Remove old Lib/test/test_ttk_guionly.py. * Add __main__ sub-modules. * Update imports and update references to rename files.
Diffstat (limited to 'Lib/tkinter/test/test_tkinter/test_font.py')
-rw-r--r--Lib/tkinter/test/test_tkinter/test_font.py163
1 files changed, 0 insertions, 163 deletions
diff --git a/Lib/tkinter/test/test_tkinter/test_font.py b/Lib/tkinter/test/test_tkinter/test_font.py
deleted file mode 100644
index 058c53a902..0000000000
--- a/Lib/tkinter/test/test_tkinter/test_font.py
+++ /dev/null
@@ -1,163 +0,0 @@
-import unittest
-import tkinter
-from tkinter import font
-from test.support import requires, gc_collect, ALWAYS_EQ
-from tkinter.test.support import AbstractTkTest, AbstractDefaultRootTest
-
-requires('gui')
-
-fontname = "TkDefaultFont"
-
-class FontTest(AbstractTkTest, unittest.TestCase):
-
- @classmethod
- def setUpClass(cls):
- AbstractTkTest.setUpClass.__func__(cls)
- try:
- cls.font = font.Font(root=cls.root, name=fontname, exists=True)
- except tkinter.TclError:
- cls.font = font.Font(root=cls.root, name=fontname, exists=False)
-
- def test_configure(self):
- options = self.font.configure()
- self.assertGreaterEqual(set(options),
- {'family', 'size', 'weight', 'slant', 'underline', 'overstrike'})
- for key in options:
- self.assertEqual(self.font.cget(key), options[key])
- self.assertEqual(self.font[key], options[key])
- for key in 'family', 'weight', 'slant':
- self.assertIsInstance(options[key], str)
- self.assertIsInstance(self.font.cget(key), str)
- self.assertIsInstance(self.font[key], str)
- sizetype = int if self.wantobjects else str
- for key in 'size', 'underline', 'overstrike':
- self.assertIsInstance(options[key], sizetype)
- self.assertIsInstance(self.font.cget(key), sizetype)
- self.assertIsInstance(self.font[key], sizetype)
-
- def test_unicode_family(self):
- family = 'MS \u30b4\u30b7\u30c3\u30af'
- try:
- f = font.Font(root=self.root, family=family, exists=True)
- except tkinter.TclError:
- f = font.Font(root=self.root, family=family, exists=False)
- self.assertEqual(f.cget('family'), family)
- del f
- gc_collect()
-
- def test_actual(self):
- options = self.font.actual()
- self.assertGreaterEqual(set(options),
- {'family', 'size', 'weight', 'slant', 'underline', 'overstrike'})
- for key in options:
- self.assertEqual(self.font.actual(key), options[key])
- for key in 'family', 'weight', 'slant':
- self.assertIsInstance(options[key], str)
- self.assertIsInstance(self.font.actual(key), str)
- sizetype = int if self.wantobjects else str
- for key in 'size', 'underline', 'overstrike':
- self.assertIsInstance(options[key], sizetype)
- self.assertIsInstance(self.font.actual(key), sizetype)
-
- def test_name(self):
- self.assertEqual(self.font.name, fontname)
- self.assertEqual(str(self.font), fontname)
-
- def test_equality(self):
- font1 = font.Font(root=self.root, name=fontname, exists=True)
- font2 = font.Font(root=self.root, name=fontname, exists=True)
- self.assertIsNot(font1, font2)
- self.assertEqual(font1, font2)
- self.assertNotEqual(font1, font1.copy())
-
- self.assertNotEqual(font1, 0)
- self.assertEqual(font1, ALWAYS_EQ)
-
- root2 = tkinter.Tk()
- self.addCleanup(root2.destroy)
- font3 = font.Font(root=root2, name=fontname, exists=True)
- self.assertEqual(str(font1), str(font3))
- self.assertNotEqual(font1, font3)
-
- def test_measure(self):
- self.assertIsInstance(self.font.measure('abc'), int)
-
- def test_metrics(self):
- metrics = self.font.metrics()
- self.assertGreaterEqual(set(metrics),
- {'ascent', 'descent', 'linespace', 'fixed'})
- for key in metrics:
- self.assertEqual(self.font.metrics(key), metrics[key])
- self.assertIsInstance(metrics[key], int)
- self.assertIsInstance(self.font.metrics(key), int)
-
- def test_families(self):
- families = font.families(self.root)
- self.assertIsInstance(families, tuple)
- self.assertTrue(families)
- for family in families:
- self.assertIsInstance(family, str)
- self.assertTrue(family)
-
- def test_names(self):
- names = font.names(self.root)
- self.assertIsInstance(names, tuple)
- self.assertTrue(names)
- for name in names:
- self.assertIsInstance(name, str)
- self.assertTrue(name)
- self.assertIn(fontname, names)
-
- def test_nametofont(self):
- testfont = font.nametofont(fontname, root=self.root)
- self.assertIsInstance(testfont, font.Font)
- self.assertEqual(testfont.name, fontname)
-
- def test_repr(self):
- self.assertEqual(
- repr(self.font), f'<tkinter.font.Font object {fontname!r}>'
- )
-
-
-class DefaultRootTest(AbstractDefaultRootTest, unittest.TestCase):
-
- def test_families(self):
- self.assertRaises(RuntimeError, font.families)
- root = tkinter.Tk()
- families = font.families()
- self.assertIsInstance(families, tuple)
- self.assertTrue(families)
- for family in families:
- self.assertIsInstance(family, str)
- self.assertTrue(family)
- root.destroy()
- tkinter.NoDefaultRoot()
- self.assertRaises(RuntimeError, font.families)
-
- def test_names(self):
- self.assertRaises(RuntimeError, font.names)
- root = tkinter.Tk()
- names = font.names()
- self.assertIsInstance(names, tuple)
- self.assertTrue(names)
- for name in names:
- self.assertIsInstance(name, str)
- self.assertTrue(name)
- self.assertIn(fontname, names)
- root.destroy()
- tkinter.NoDefaultRoot()
- self.assertRaises(RuntimeError, font.names)
-
- def test_nametofont(self):
- self.assertRaises(RuntimeError, font.nametofont, fontname)
- root = tkinter.Tk()
- testfont = font.nametofont(fontname)
- self.assertIsInstance(testfont, font.Font)
- self.assertEqual(testfont.name, fontname)
- root.destroy()
- tkinter.NoDefaultRoot()
- self.assertRaises(RuntimeError, font.nametofont, fontname)
-
-
-if __name__ == "__main__":
- unittest.main()