1 2from PyObjCTools.TestSupport import * 3from Quartz import * 4 5class TestIKImageBrowserViewHelper (NSObject): 6 # IKImageBrowserDataSource 7 def numberOfItemsInImageBrowser_(self, b): return 1 8 def imageBrowser_itemAtIndex_(self, b, i): return None 9 def imageBrowser_moveItemsAtIndexes_toIndex_(self, b, st, i): return False 10 def imageBrowser_writeItemsAtIndexes_toPasteboard_(self, b, st, pb): return 44 11 def numberOfGroupsInImageBrowser_(self, b): return 1 12 def imageBrowser_groupAtIndex_(self, b, idx): return None 13 14 # IKImageBrowserItem 15 def imageVersion(self): return 1 16 def isSelectable(self): return True 17 18 # IKImageBrowserDelegate 19 def imageBrowser_cellWasDoubleClickedAtIndex_(self, b, idx): pass 20 def imageBrowser_cellWasRightClickedAtIndex_withEvent_(self, b, idx, e): pass 21 22 23class TestIKImageBrowserView (TestCase): 24 @min_os_level('10.5') 25 def testProtocols(self): 26 self.assertIsInstance(protocols.IKImageBrowserDataSource, objc.informal_protocol) 27 28 self.assertResultHasType(TestIKImageBrowserViewHelper.numberOfItemsInImageBrowser_, objc._C_NSUInteger) 29 self.assertArgHasType(TestIKImageBrowserViewHelper.imageBrowser_itemAtIndex_, 1, objc._C_NSUInteger) 30 self.assertResultIsBOOL(TestIKImageBrowserViewHelper.imageBrowser_moveItemsAtIndexes_toIndex_) 31 self.assertArgHasType(TestIKImageBrowserViewHelper.imageBrowser_moveItemsAtIndexes_toIndex_, 2, objc._C_NSUInteger) 32 self.assertResultHasType(TestIKImageBrowserViewHelper.imageBrowser_writeItemsAtIndexes_toPasteboard_, objc._C_NSUInteger) 33 self.assertResultHasType(TestIKImageBrowserViewHelper.numberOfGroupsInImageBrowser_, objc._C_NSUInteger) 34 self.assertArgHasType(TestIKImageBrowserViewHelper.imageBrowser_groupAtIndex_, 1, objc._C_NSUInteger) 35 36 self.assertIsInstance(protocols.IKImageBrowserItem, objc.informal_protocol) 37 self.assertResultHasType(TestIKImageBrowserViewHelper.imageVersion, objc._C_NSUInteger) 38 self.assertResultIsBOOL(TestIKImageBrowserViewHelper.isSelectable) 39 40 self.assertIsInstance(protocols.IKImageBrowserDelegate, objc.informal_protocol) 41 self.assertArgHasType(TestIKImageBrowserViewHelper.imageBrowser_cellWasDoubleClickedAtIndex_, 1, objc._C_NSUInteger) 42 self.assertArgHasType(TestIKImageBrowserViewHelper.imageBrowser_cellWasRightClickedAtIndex_withEvent_, 1, objc._C_NSUInteger) 43 44 @min_os_level('10.5') 45 def testMethods(self): 46 self.assertResultIsBOOL(IKImageBrowserView.constrainsToOriginalSize) 47 self.assertArgIsBOOL(IKImageBrowserView.setConstrainsToOriginalSize_, 0) 48 self.assertArgIsBOOL(IKImageBrowserView.setSelectionIndexes_byExtendingSelection_, 1) 49 self.assertResultIsBOOL(IKImageBrowserView.allowsMultipleSelection) 50 self.assertArgIsBOOL(IKImageBrowserView.setAllowsMultipleSelection_, 0) 51 self.assertResultIsBOOL(IKImageBrowserView.allowsEmptySelection) 52 self.assertArgIsBOOL(IKImageBrowserView.setAllowsEmptySelection_, 0) 53 self.assertResultIsBOOL(IKImageBrowserView.allowsReordering) 54 self.assertArgIsBOOL(IKImageBrowserView.setAllowsReordering_, 0) 55 self.assertResultIsBOOL(IKImageBrowserView.animates) 56 self.assertArgIsBOOL(IKImageBrowserView.setAnimates_, 0) 57 58 # Method does not exist? 59 #view = IKImageBrowserView.alloc().init() 60 #self.assertResultIsBOOL(view.isGroupExpandedAtIndex_) 61 62 @min_os_level('10.5') 63 def testConstants(self): 64 self.assertEqual(IKCellsStyleNone, 0) 65 self.assertEqual(IKCellsStyleShadowed, 1) 66 self.assertEqual(IKCellsStyleOutlined, 2) 67 self.assertEqual(IKCellsStyleTitled, 4) 68 self.assertEqual(IKCellsStyleSubtitled, 8) 69 self.assertEqual(IKGroupBezelStyle, 0) 70 self.assertEqual(IKGroupDisclosureStyle, 1) 71 72 self.assertIsInstance(IKImageBrowserPathRepresentationType, unicode) 73 self.assertIsInstance(IKImageBrowserNSURLRepresentationType, unicode) 74 self.assertIsInstance(IKImageBrowserNSImageRepresentationType, unicode) 75 self.assertIsInstance(IKImageBrowserCGImageRepresentationType, unicode) 76 self.assertIsInstance(IKImageBrowserCGImageSourceRepresentationType, unicode) 77 self.assertIsInstance(IKImageBrowserNSDataRepresentationType, unicode) 78 self.assertIsInstance(IKImageBrowserNSBitmapImageRepresentationType, unicode) 79 self.assertIsInstance(IKImageBrowserQTMovieRepresentationType, unicode) 80 self.assertIsInstance(IKImageBrowserQTMoviePathRepresentationType, unicode) 81 self.assertIsInstance(IKImageBrowserQCCompositionRepresentationType, unicode) 82 self.assertIsInstance(IKImageBrowserQCCompositionPathRepresentationType, unicode) 83 self.assertIsInstance(IKImageBrowserQuickLookPathRepresentationType, unicode) 84 self.assertIsInstance(IKImageBrowserIconRefPathRepresentationType, unicode) 85 self.assertIsInstance(IKImageBrowserIconRefRepresentationType, unicode) 86 self.assertIsInstance(IKImageBrowserBackgroundColorKey, unicode) 87 self.assertIsInstance(IKImageBrowserSelectionColorKey, unicode) 88 self.assertIsInstance(IKImageBrowserCellsOutlineColorKey, unicode) 89 self.assertIsInstance(IKImageBrowserCellsTitleAttributesKey, unicode) 90 self.assertIsInstance(IKImageBrowserCellsHighlightedTitleAttributesKey, unicode) 91 self.assertIsInstance(IKImageBrowserCellsSubtitleAttributesKey, unicode) 92 self.assertIsInstance(IKImageBrowserGroupRangeKey, unicode) 93 self.assertIsInstance(IKImageBrowserGroupBackgroundColorKey, unicode) 94 self.assertIsInstance(IKImageBrowserGroupTitleKey, unicode) 95 self.assertIsInstance(IKImageBrowserGroupStyleKey, unicode) 96 97 @min_os_level('10.6') 98 def testConstants10_6(self): 99 self.assertEqual(IKImageBrowserDropOn, 0) 100 self.assertEqual(IKImageBrowserDropBefore, 1) 101 102 self.assertIsInstance(IKImageBrowserPDFPageRepresentationType, unicode) 103 self.assertIsInstance(IKImageBrowserGroupHeaderLayer, unicode) 104 self.assertIsInstance(IKImageBrowserGroupHeaderLayer, unicode) 105 106 @min_os_level('10.6') 107 def testMethods10_6(self): 108 self.assertResultIsBOOL(IKImageBrowserView.canControlQuickLookPanel) 109 self.assertArgIsBOOL(IKImageBrowserView.setCanControlQuickLookPanel_, 0) 110 self.assertResultIsBOOL(IKImageBrowserView.allowsDroppingOnItems) 111 self.assertArgIsBOOL(IKImageBrowserView.setAllowsDroppingOnItems_, 0) 112 113if __name__ == "__main__": 114 main() 115