1
2from PyObjCTools.TestSupport import *
3from AppKit import *
4
5class TestNSFontManagerHelper (NSObject):
6    def fontManager_willIncludeFont_(self, m, f): return 1
7
8class TestNSFontManager (TestCase):
9    def testConstants(self):
10        self.assertEqual(NSItalicFontMask, 0x00000001)
11        self.assertEqual(NSBoldFontMask, 0x00000002)
12        self.assertEqual(NSUnboldFontMask, 0x00000004)
13        self.assertEqual(NSNonStandardCharacterSetFontMask, 0x00000008)
14        self.assertEqual(NSNarrowFontMask, 0x00000010)
15        self.assertEqual(NSExpandedFontMask, 0x00000020)
16        self.assertEqual(NSCondensedFontMask, 0x00000040)
17        self.assertEqual(NSSmallCapsFontMask, 0x00000080)
18        self.assertEqual(NSPosterFontMask, 0x00000100)
19        self.assertEqual(NSCompressedFontMask, 0x00000200)
20        self.assertEqual(NSFixedPitchFontMask, 0x00000400)
21        self.assertEqual(NSUnitalicFontMask, 0x01000000)
22        self.assertEqual(NSFontCollectionApplicationOnlyMask, 1 << 0)
23        self.assertEqual(NSNoFontChangeAction, 0)
24        self.assertEqual(NSViaPanelFontAction, 1)
25        self.assertEqual(NSAddTraitFontAction, 2)
26        self.assertEqual(NSSizeUpFontAction, 3)
27        self.assertEqual(NSSizeDownFontAction, 4)
28        self.assertEqual(NSHeavierFontAction, 5)
29        self.assertEqual(NSLighterFontAction, 6)
30        self.assertEqual(NSRemoveTraitFontAction, 7)
31
32    def testMethods(self):
33        self.assertResultIsBOOL(NSFontManager.isMultiple)
34        self.assertArgIsBOOL(NSFontManager.setSelectedFont_isMultiple_, 1)
35        self.assertArgIsBOOL(NSFontManager.fontMenu_, 0)
36        self.assertArgIsBOOL(NSFontManager.fontPanel_, 0)
37        self.assertResultIsBOOL(NSFontManager.isEnabled)
38        self.assertArgIsBOOL(NSFontManager.setEnabled_, 0)
39        self.assertResultIsBOOL(NSFontManager.sendAction)
40        self.assertArgIsBOOL(NSFontManager.setSelectedAttributes_isMultiple_, 1)
41        self.assertResultIsBOOL(NSFontManager.addCollection_options_)
42        self.assertResultIsBOOL(NSFontManager.removeCollection_)
43        self.assertResultIsBOOL(NSFontManager.fontNamed_hasTraits_)
44
45    def testProtocols(self):
46        self.assertResultIsBOOL(TestNSFontManagerHelper.fontManager_willIncludeFont_)
47
48if __name__ == "__main__":
49    main()
50