1 2from PyObjCTools.TestSupport import * 3from AppKit import * 4 5class TestNSGlyphGeneratorHelper (NSObject): 6 def insertGlyphs_length_forStartingGlyphAtIndex_characterIndex_(self, glyphs, length, glyphIndex, charIndex): 7 self.glyphs = (glyphs, length, glyphIndex, charIndex) 8 9 def setIntAttribute_value_forGlyphAtIndex_(self, a, v, g): pass 10 11 12class TestNSGlyphGenerator (TestCase): 13 def testConstants(self): 14 self.failUnlessEqual(NSShowControlGlyphs, (1 << 0)) 15 self.failUnlessEqual(NSShowInvisibleGlyphs, (1 << 1)) 16 self.failUnlessEqual(NSWantsBidiLevels, (1 << 2)) 17 18 def testProtocols(self): 19 self.failUnlessArgHasType(TestNSGlyphGeneratorHelper.setIntAttribute_value_forGlyphAtIndex_, 0, objc._C_NSInteger) 20 self.failUnlessArgHasType(TestNSGlyphGeneratorHelper.setIntAttribute_value_forGlyphAtIndex_, 1, objc._C_NSInteger) 21 self.failUnlessArgHasType(TestNSGlyphGeneratorHelper.setIntAttribute_value_forGlyphAtIndex_, 2, objc._C_NSUInteger) 22 23 o = TestNSGlyphGeneratorHelper.alloc().init() 24 o.insertGlyphs_length_forStartingGlyphAtIndex_characterIndex_( 25 [0, 1, 2, 3, 4], 5, 3, 8) 26 self.failUnlessEqual(o.glyphs, ([0, 1, 2, 3, 4], 5, 3, 8)) 27 self.failUnlessArgHasType( 28 TestNSGlyphGeneratorHelper.insertGlyphs_length_forStartingGlyphAtIndex_characterIndex_, 29 0, 'n^I') 30 self.failUnlessArgSizeInArg( 31 TestNSGlyphGeneratorHelper.insertGlyphs_length_forStartingGlyphAtIndex_characterIndex_, 32 0, 1) 33 self.failUnlessArgHasType( 34 TestNSGlyphGeneratorHelper.insertGlyphs_length_forStartingGlyphAtIndex_characterIndex_, 35 1, objc._C_NSUInteger) 36 self.failUnlessArgHasType( 37 TestNSGlyphGeneratorHelper.insertGlyphs_length_forStartingGlyphAtIndex_characterIndex_, 38 2, objc._C_NSUInteger) 39 self.failUnlessArgHasType( 40 TestNSGlyphGeneratorHelper.insertGlyphs_length_forStartingGlyphAtIndex_characterIndex_, 41 3, objc._C_NSUInteger) 42 43 def testMethods(self): 44 self.failUnlessArgIsOut( 45 NSGlyphGenerator.generateGlyphsForGlyphStorage_desiredNumberOfCharacters_glyphIndex_characterIndex_, 2) 46 self.failUnlessArgIsOut( 47 NSGlyphGenerator.generateGlyphsForGlyphStorage_desiredNumberOfCharacters_glyphIndex_characterIndex_, 3) 48 49 50if __name__ == "__main__": 51 main() 52