1 2from PyObjCTools.TestSupport import * 3from AppKit import * 4 5class TestNSTextInputClientHelper (NSObject): 6 def insertText_replacementRange_(self, txt, rng): pass 7 def doCommandBySelector_(self, sel): pass 8 def setMarkedText_selectedRange_replacementRange_(self, txt, rng1, rng2): pass 9 def selectedRange(self): return 1 10 def markedRange(self): return 1 11 def hasMarkedText(self): return 1 12 def attributedSubstringForProposedRange_actualRange_(self, rng1, rng2): return 1 13 def firstRectForCharacterRange_actualRange_(self, rng1, rng2): return 1 14 def characterIndexForPoint_(self, pt): return 1 15 def fractionOfDistanceThroughGlyphForPoint_(self, pt): return 1 16 def baselineDeltaForCharacterAtIndex_(self, idx): return 1 17 def windowLevel(self): return 1 18 def drawsVerticallyForCharacterAtIndex_(self, i): return 1 19 20 21class TestNSTextInputClient (TestCase): 22 23 @min_os_level("10.5") 24 def testMethods(self): 25 self.assertArgHasType(TestNSTextInputClientHelper.insertText_replacementRange_, 1, NSRange.__typestr__) 26 self.assertArgHasType(TestNSTextInputClientHelper.doCommandBySelector_, 0, objc._C_SEL) 27 self.assertArgHasType(TestNSTextInputClientHelper.setMarkedText_selectedRange_replacementRange_, 1, NSRange.__typestr__) 28 self.assertArgHasType(TestNSTextInputClientHelper.setMarkedText_selectedRange_replacementRange_, 2, NSRange.__typestr__) 29 self.assertResultHasType(TestNSTextInputClientHelper.selectedRange, NSRange.__typestr__) 30 self.assertResultHasType(TestNSTextInputClientHelper.markedRange, NSRange.__typestr__) 31 self.assertResultIsBOOL(TestNSTextInputClientHelper.hasMarkedText) 32 self.assertArgHasType(TestNSTextInputClientHelper.attributedSubstringForProposedRange_actualRange_, 0, NSRange.__typestr__) 33 self.assertArgHasType(TestNSTextInputClientHelper.attributedSubstringForProposedRange_actualRange_, 1, b'o^' + NSRange.__typestr__) 34 self.assertResultHasType(TestNSTextInputClientHelper.firstRectForCharacterRange_actualRange_, NSRect.__typestr__) 35 self.assertArgHasType(TestNSTextInputClientHelper.firstRectForCharacterRange_actualRange_, 0, NSRange.__typestr__) 36 self.assertArgHasType(TestNSTextInputClientHelper.firstRectForCharacterRange_actualRange_, 1, b'o^' + NSRange.__typestr__) 37 self.assertResultHasType(TestNSTextInputClientHelper.characterIndexForPoint_, objc._C_NSUInteger) 38 self.assertArgHasType(TestNSTextInputClientHelper.characterIndexForPoint_, 0, NSPoint.__typestr__) 39 self.assertResultHasType(TestNSTextInputClientHelper.fractionOfDistanceThroughGlyphForPoint_, objc._C_CGFloat) 40 self.assertArgHasType(TestNSTextInputClientHelper.fractionOfDistanceThroughGlyphForPoint_, 0, NSPoint.__typestr__) 41 self.assertResultHasType(TestNSTextInputClientHelper.baselineDeltaForCharacterAtIndex_, objc._C_CGFloat) 42 self.assertArgHasType(TestNSTextInputClientHelper.baselineDeltaForCharacterAtIndex_, 0, objc._C_NSUInteger) 43 self.assertResultHasType(TestNSTextInputClientHelper.windowLevel, objc._C_NSInteger) 44 45 @min_os_level('10.6') 46 def testMethods10_6(self): 47 self.assertResultIsBOOL(TestNSTextInputClientHelper.drawsVerticallyForCharacterAtIndex_) 48 self.assertArgHasType(TestNSTextInputClientHelper.drawsVerticallyForCharacterAtIndex_, 0, objc._C_NSInteger) 49 50 51if __name__ == "__main__": 52 main() 53