1 2from PyObjCTools.TestSupport import * 3from AppKit import * 4 5class TestNSTableViewHelper (NSObject): 6 def numberOfRowsInTableView_(self, tv): return 1 7 def tableView_objectValueForTableColumn_row_(self, tv, c, r): return 1 8 def tableView_setObjectValue_forTableColumn_row_(self, o, tv, c, r): pass 9 def tableView_writeRowsWithIndexes_toPasteboard_(self, tv, r, p): return 1 10 def tableView_validateDrop_proposedRow_proposedDropOperation_(self, tv, dr, r, o): return 1 11 def tableView_acceptDrop_row_dropOperation_(self, tv, dr, r, o): return 1 12 def tableView_writeRows_toPasteboard_(self, tv, r, p): return 1 13 14 def tableView_willDisplayCell_forTableColumn_row_(self, tv, c, tc, r): return 1 15 def tableView_shouldEditTableColumn_row_(self, tv, tc, r): return 1 16 def selectionShouldChangeInTableView_(self, tv): return 1 17 def tableView_shouldSelectTableColumn_(self, tv, tc): return 1 18 def tableView_toolTipForCell_rect_tableColumn_row_mouseLocation_(self, tv, c, re, tc, r, l): return 1 19 def tableView_heightOfRow_(self, tv, r): return 1 20 def tableView_typeSelectStringForTableColumn_row_(self, tv, tc, r): return 1 21 def tableView_nextTypeSelectMatchFromRow_toRow_forString_(self, tv, r1, r2, s): return 1 22 def tableView_shouldTypeSelectForEvent_withCurrentSearchString_(self, tv, e, s): return 1 23 def tableView_shouldShowCellExpansionForTableColumn_row_(self, tv, tc, r): return 1 24 def tableView_shouldTrackCell_forTableColumn_row_(self, tv, c, tc, r): return 1 25 def tableView_dataCellForTableColumn_row_(self, tv, tc, r): return 1 26 def tableView_isGroupRow_(self, tv, r): return 1 27 28 def tableView_sizeToFitWidthOfColumn_(self, tv, c): return 1 29 def tableView_shouldReorderColumn_toColumn_(self, tv, c1, c2): return 1 30 31 32 33 34 35class TestNSTableView (TestCase): 36 def testConstants(self): 37 self.assertEqual(NSTableViewDropOn, 0) 38 self.assertEqual(NSTableViewDropAbove, 1) 39 40 self.assertEqual(NSTableViewNoColumnAutoresizing, 0) 41 self.assertEqual(NSTableViewUniformColumnAutoresizingStyle, 1) 42 self.assertEqual(NSTableViewSequentialColumnAutoresizingStyle, 2) 43 self.assertEqual(NSTableViewReverseSequentialColumnAutoresizingStyle, 3) 44 self.assertEqual(NSTableViewLastColumnOnlyAutoresizingStyle, 4) 45 self.assertEqual(NSTableViewFirstColumnOnlyAutoresizingStyle, 5) 46 47 self.assertEqual(NSTableViewGridNone, 0) 48 self.assertEqual(NSTableViewSolidVerticalGridLineMask, 1 << 0) 49 self.assertEqual(NSTableViewSolidHorizontalGridLineMask, 1 << 1) 50 51 self.assertEqual(NSTableViewSelectionHighlightStyleRegular, 0) 52 self.assertEqual(NSTableViewSelectionHighlightStyleSourceList, 1) 53 54 self.assertIsInstance(NSTableViewSelectionDidChangeNotification, unicode) 55 self.assertIsInstance(NSTableViewColumnDidMoveNotification, unicode) 56 self.assertIsInstance(NSTableViewColumnDidResizeNotification, unicode) 57 self.assertIsInstance(NSTableViewSelectionIsChangingNotification, unicode) 58 59 @min_os_level('10.6') 60 def testConstants10_6(self): 61 self.assertEqual(NSTableViewSelectionHighlightStyleNone, -1) 62 self.assertEqual(NSTableViewDraggingDestinationFeedbackStyleNone, -1) 63 self.assertEqual(NSTableViewDraggingDestinationFeedbackStyleRegular, 0) 64 self.assertEqual(NSTableViewDraggingDestinationFeedbackStyleSourceList, 1) 65 66 def testMethods(self): 67 self.assertArgIsBOOL(NSTableView.setAllowsColumnReordering_, 0) 68 self.assertResultIsBOOL(NSTableView.allowsColumnReordering) 69 self.assertArgIsBOOL(NSTableView.setAllowsColumnResizing_, 0) 70 self.assertResultIsBOOL(NSTableView.allowsColumnResizing) 71 self.assertArgIsBOOL(NSTableView.setUsesAlternatingRowBackgroundColors_, 0) 72 self.assertResultIsBOOL(NSTableView.usesAlternatingRowBackgroundColors) 73 self.assertArgIsBOOL(NSTableView.setVerticalMotionCanBeginDrag_, 0) 74 self.assertResultIsBOOL(NSTableView.verticalMotionCanBeginDrag) 75 self.assertResultIsBOOL(NSTableView.canDragRowsWithIndexes_atPoint_) 76 self.assertArgIsInOut(NSTableView.dragImageForRowsWithIndexes_tableColumns_event_offset_, 3) 77 self.assertArgIsBOOL(NSTableView.setDraggingSourceOperationMask_forLocal_, 1) 78 self.assertResultIsBOOL(NSTableView.verticalMotionCanBeginDrag) 79 self.assertArgIsBOOL(NSTableView.setAllowsMultipleSelection_, 0) 80 self.assertResultIsBOOL(NSTableView.allowsMultipleSelection) 81 self.assertArgIsBOOL(NSTableView.setAllowsEmptySelection_, 0) 82 self.assertResultIsBOOL(NSTableView.allowsEmptySelection) 83 self.assertArgIsBOOL(NSTableView.setAllowsColumnSelection_, 0) 84 self.assertResultIsBOOL(NSTableView.allowsColumnSelection) 85 self.assertArgIsBOOL(NSTableView.selectColumnIndexes_byExtendingSelection_, 1) 86 self.assertArgIsBOOL(NSTableView.selectRowIndexes_byExtendingSelection_, 1) 87 self.assertResultIsBOOL(NSTableView.isColumnSelected_) 88 self.assertResultIsBOOL(NSTableView.isRowSelected_) 89 self.assertResultIsBOOL(NSTableView.textShouldBeginEditing_) 90 self.assertResultIsBOOL(NSTableView.textShouldEndEditing_) 91 self.assertArgIsBOOL(NSTableView.setAutosaveTableColumns_, 0) 92 self.assertResultIsBOOL(NSTableView.autosaveTableColumns) 93 self.assertArgIsBOOL(NSTableView.editColumn_row_withEvent_select_, 3) 94 95 self.assertArgHasType(NSTableView.drawBackgroundInClipRect_, 0, NSRect.__typestr__) 96 97 98 99 self.assertArgIsBOOL(NSTableView.setDrawsGrid_, 0) 100 self.assertResultIsBOOL(NSTableView.drawsGrid) 101 self.assertArgIsBOOL(NSTableView.selectColumn_byExtendingSelection_, 1) 102 self.assertArgIsBOOL(NSTableView.selectRow_byExtendingSelection_, 1) 103 self.assertArgIsInOut(NSTableView.dragImageForRows_event_dragImageOffset_, 2) 104 self.assertArgIsBOOL(NSTableView.setAutoresizesAllColumnsToFit_, 0) 105 self.assertResultIsBOOL(NSTableView.autoresizesAllColumnsToFit) 106 107 @min_os_level('10.5') 108 def testMethods10_5(self): 109 self.assertArgIsBOOL(NSTableView.setAllowsTypeSelect_, 0) 110 self.assertResultIsBOOL(NSTableView.allowsTypeSelect) 111 112 self.assertArgHasType(NSTableView.columnIndexesInRect_, 0, NSRect.__typestr__) 113 114 @min_os_level('10.6') 115 def testMethods10_6(self): 116 self.assertResultIsBOOL(NSTableView.shouldFocusCell_atColumn_row_) 117 118 119 def testProtocols(self): 120 self.assertResultHasType(TestNSTableViewHelper.numberOfRowsInTableView_, objc._C_NSInteger) 121 self.assertArgHasType(TestNSTableViewHelper.tableView_objectValueForTableColumn_row_, 2, objc._C_NSInteger) 122 self.assertArgHasType(TestNSTableViewHelper.tableView_setObjectValue_forTableColumn_row_, 3, objc._C_NSInteger) 123 self.assertResultIsBOOL(TestNSTableViewHelper.tableView_writeRowsWithIndexes_toPasteboard_) 124 self.assertResultHasType(TestNSTableViewHelper.tableView_validateDrop_proposedRow_proposedDropOperation_, objc._C_NSUInteger) 125 self.assertArgHasType(TestNSTableViewHelper.tableView_validateDrop_proposedRow_proposedDropOperation_, 2, objc._C_NSInteger) 126 self.assertArgHasType(TestNSTableViewHelper.tableView_validateDrop_proposedRow_proposedDropOperation_, 3, objc._C_NSUInteger) 127 self.assertResultIsBOOL(TestNSTableViewHelper.tableView_acceptDrop_row_dropOperation_) 128 self.assertArgHasType(TestNSTableViewHelper.tableView_acceptDrop_row_dropOperation_, 2, objc._C_NSInteger) 129 self.assertArgHasType(TestNSTableViewHelper.tableView_acceptDrop_row_dropOperation_, 3, objc._C_NSUInteger) 130 self.assertResultIsBOOL(TestNSTableViewHelper.tableView_writeRows_toPasteboard_) 131 132 133 self.assertArgHasType(TestNSTableViewHelper.tableView_willDisplayCell_forTableColumn_row_, 3, objc._C_NSInteger) 134 self.assertResultIsBOOL(TestNSTableViewHelper.tableView_shouldEditTableColumn_row_) 135 self.assertArgHasType(TestNSTableViewHelper.tableView_shouldEditTableColumn_row_, 2, objc._C_NSInteger) 136 self.assertResultIsBOOL(TestNSTableViewHelper.selectionShouldChangeInTableView_) 137 self.assertResultIsBOOL(TestNSTableViewHelper.tableView_shouldSelectTableColumn_) 138 self.assertArgHasType(TestNSTableViewHelper.tableView_toolTipForCell_rect_tableColumn_row_mouseLocation_, 2, b'N^' + NSRect.__typestr__) 139 self.assertArgHasType(TestNSTableViewHelper.tableView_toolTipForCell_rect_tableColumn_row_mouseLocation_, 4, objc._C_NSInteger) 140 self.assertArgHasType(TestNSTableViewHelper.tableView_toolTipForCell_rect_tableColumn_row_mouseLocation_, 5, NSPoint.__typestr__) 141 self.assertResultHasType(TestNSTableViewHelper.tableView_heightOfRow_, objc._C_CGFloat) 142 self.assertArgHasType(TestNSTableViewHelper.tableView_heightOfRow_, 1, objc._C_NSInteger) 143 self.assertArgHasType(TestNSTableViewHelper.tableView_typeSelectStringForTableColumn_row_, 2, objc._C_NSInteger) 144 self.assertResultHasType(TestNSTableViewHelper.tableView_nextTypeSelectMatchFromRow_toRow_forString_, objc._C_NSInteger) 145 self.assertArgHasType(TestNSTableViewHelper.tableView_nextTypeSelectMatchFromRow_toRow_forString_, 1, objc._C_NSInteger) 146 self.assertArgHasType(TestNSTableViewHelper.tableView_nextTypeSelectMatchFromRow_toRow_forString_, 2, objc._C_NSInteger) 147 self.assertResultIsBOOL(TestNSTableViewHelper.tableView_shouldTypeSelectForEvent_withCurrentSearchString_) 148 self.assertResultIsBOOL(TestNSTableViewHelper.tableView_shouldShowCellExpansionForTableColumn_row_) 149 self.assertArgHasType(TestNSTableViewHelper.tableView_shouldShowCellExpansionForTableColumn_row_, 2, objc._C_NSInteger) 150 self.assertResultIsBOOL(TestNSTableViewHelper.tableView_shouldTrackCell_forTableColumn_row_) 151 self.assertArgHasType(TestNSTableViewHelper.tableView_shouldTrackCell_forTableColumn_row_, 3, objc._C_NSInteger) 152 self.assertArgHasType(TestNSTableViewHelper.tableView_dataCellForTableColumn_row_, 2, objc._C_NSInteger) 153 self.assertResultIsBOOL(TestNSTableViewHelper.tableView_isGroupRow_) 154 self.assertArgHasType(TestNSTableViewHelper.tableView_isGroupRow_, 1, objc._C_NSInteger) 155 156 @min_os_level('10.6') 157 def testProtococols10_6(self): 158 self.assertResultHasType(TestNSTableViewHelper.tableView_sizeToFitWidthOfColumn_, objc._C_CGFloat) 159 self.assertArgHasType(TestNSTableViewHelper.tableView_sizeToFitWidthOfColumn_, 1, objc._C_NSInteger) 160 161 self.assertResultIsBOOL(TestNSTableViewHelper.tableView_shouldReorderColumn_toColumn_) 162 self.assertArgHasType(TestNSTableViewHelper.tableView_shouldReorderColumn_toColumn_, 1, objc._C_NSInteger) 163 self.assertArgHasType(TestNSTableViewHelper.tableView_shouldReorderColumn_toColumn_, 2, objc._C_NSInteger) 164 165if __name__ == "__main__": 166 main() 167