1 2from PyObjCTools.TestSupport import * 3from AppKit import * 4 5class TestNSSplitViewHelper (NSObject): 6 def splitView_canCollapseSubview_(self, sp, sv): return 1 7 def splitView_shouldCollapseSubview_forDoubleClickOnDividerAtIndex_(self, sp, sv, i): return 1 8 def splitView_constrainMinCoordinate_ofSubviewAt_(self, sv, c, i): return 1 9 def splitView_constrainMaxCoordinate_ofSubviewAt_(self, sv, c, i): return 1 10 def splitView_constrainSplitPosition_ofSubviewAt_(self, sv, c, i): return 1 11 def splitView_resizeSubviewsWithOldSize_(self, sv, sz): pass 12 def splitView_shouldHideDividerAtIndex_(self, sv, i): return 1 13 def splitView_effectiveRect_forDrawnRect_ofDividerAtIndex_(self, sv, er, dr, i): return 1 14 def splitView_additionalEffectiveRectOfDividerAtIndex_(self, sv, i): return 1 15 def splitViewWillResizeSubviews_(self, nt): pass 16 def splitViewDidResizeSubviews_(self, nt): pass 17 18class TestNSSplitView (TestCase): 19 def testConstants(self): 20 self.failUnlessEqual(NSSplitViewDividerStyleThick, 1) 21 self.failUnlessEqual(NSSplitViewDividerStyleThin, 2) 22 23 self.failUnlessIsInstance(NSSplitViewWillResizeSubviewsNotification, unicode) 24 self.failUnlessIsInstance(NSSplitViewDidResizeSubviewsNotification, unicode) 25 26 def testMethods(self): 27 self.failUnlessResultIsBOOL(NSSplitView.isVertical) 28 self.failUnlessArgIsBOOL(NSSplitView.setVertical_, 0) 29 self.failUnlessResultIsBOOL(NSSplitView.isSubviewCollapsed_) 30 self.failUnlessResultIsBOOL(NSSplitView.isPaneSplitter) 31 self.failUnlessArgIsBOOL(NSSplitView.setIsPaneSplitter_, 0) 32 33 def testProtocol(self): 34 self.failUnlessResultIsBOOL(TestNSSplitViewHelper.splitView_canCollapseSubview_) 35 self.failUnlessResultIsBOOL(TestNSSplitViewHelper.splitView_shouldCollapseSubview_forDoubleClickOnDividerAtIndex_) 36 self.failUnlessArgHasType(TestNSSplitViewHelper.splitView_shouldCollapseSubview_forDoubleClickOnDividerAtIndex_, 2, objc._C_NSInteger) 37 self.failUnlessResultHasType(TestNSSplitViewHelper.splitView_constrainMinCoordinate_ofSubviewAt_, objc._C_CGFloat) 38 self.failUnlessArgHasType(TestNSSplitViewHelper.splitView_constrainMinCoordinate_ofSubviewAt_, 1, objc._C_CGFloat) 39 self.failUnlessArgHasType(TestNSSplitViewHelper.splitView_constrainMinCoordinate_ofSubviewAt_, 2, objc._C_NSInteger) 40 self.failUnlessResultHasType(TestNSSplitViewHelper.splitView_constrainMaxCoordinate_ofSubviewAt_, objc._C_CGFloat) 41 self.failUnlessArgHasType(TestNSSplitViewHelper.splitView_constrainMaxCoordinate_ofSubviewAt_, 1, objc._C_CGFloat) 42 self.failUnlessArgHasType(TestNSSplitViewHelper.splitView_constrainMaxCoordinate_ofSubviewAt_, 2, objc._C_NSInteger) 43 self.failUnlessResultHasType(TestNSSplitViewHelper.splitView_constrainSplitPosition_ofSubviewAt_, objc._C_CGFloat) 44 self.failUnlessArgHasType(TestNSSplitViewHelper.splitView_constrainSplitPosition_ofSubviewAt_, 1, objc._C_CGFloat) 45 self.failUnlessArgHasType(TestNSSplitViewHelper.splitView_constrainSplitPosition_ofSubviewAt_, 2, objc._C_NSInteger) 46 self.failUnlessArgHasType(TestNSSplitViewHelper.splitView_resizeSubviewsWithOldSize_, 1, NSSize.__typestr__) 47 48 @min_os_level('10.5') 49 def testProtocol10_5(self): 50 self.failUnlessResultIsBOOL(TestNSSplitViewHelper.splitView_shouldHideDividerAtIndex_) 51 self.failUnlessArgHasType(TestNSSplitViewHelper.splitView_shouldHideDividerAtIndex_, 1, objc._C_NSInteger) 52 53 self.failUnlessResultHasType(TestNSSplitViewHelper.splitView_effectiveRect_forDrawnRect_ofDividerAtIndex_, NSRect.__typestr__) 54 self.failUnlessArgHasType(TestNSSplitViewHelper.splitView_effectiveRect_forDrawnRect_ofDividerAtIndex_, 1, NSRect.__typestr__) 55 self.failUnlessArgHasType(TestNSSplitViewHelper.splitView_effectiveRect_forDrawnRect_ofDividerAtIndex_, 2, NSRect.__typestr__) 56 self.failUnlessArgHasType(TestNSSplitViewHelper.splitView_effectiveRect_forDrawnRect_ofDividerAtIndex_, 3, objc._C_NSInteger) 57 58 self.failUnlessResultHasType(TestNSSplitViewHelper.splitView_additionalEffectiveRectOfDividerAtIndex_, NSRect.__typestr__) 59 self.failUnlessArgHasType(TestNSSplitViewHelper.splitView_additionalEffectiveRectOfDividerAtIndex_, 1, objc._C_NSInteger) 60 61if __name__ == "__main__": 62 main() 63