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 29 30 31 32class TestNSTableView (TestCase): 33 def testConstants(self): 34 self.failUnlessEqual(NSTableViewDropOn, 0) 35 self.failUnlessEqual(NSTableViewDropAbove, 1) 36 37 self.failUnlessEqual(NSTableViewNoColumnAutoresizing, 0) 38 self.failUnlessEqual(NSTableViewUniformColumnAutoresizingStyle, 1) 39 self.failUnlessEqual(NSTableViewSequentialColumnAutoresizingStyle, 2) 40 self.failUnlessEqual(NSTableViewReverseSequentialColumnAutoresizingStyle, 3) 41 self.failUnlessEqual(NSTableViewLastColumnOnlyAutoresizingStyle, 4) 42 self.failUnlessEqual(NSTableViewFirstColumnOnlyAutoresizingStyle, 5) 43 44 self.failUnlessEqual(NSTableViewGridNone, 0) 45 self.failUnlessEqual(NSTableViewSolidVerticalGridLineMask, 1 << 0) 46 self.failUnlessEqual(NSTableViewSolidHorizontalGridLineMask, 1 << 1) 47 48 self.failUnlessEqual(NSTableViewSelectionHighlightStyleRegular, 0) 49 self.failUnlessEqual(NSTableViewSelectionHighlightStyleSourceList, 1) 50 51 self.failUnlessIsInstance(NSTableViewSelectionDidChangeNotification, unicode) 52 self.failUnlessIsInstance(NSTableViewColumnDidMoveNotification, unicode) 53 self.failUnlessIsInstance(NSTableViewColumnDidResizeNotification, unicode) 54 self.failUnlessIsInstance(NSTableViewSelectionIsChangingNotification, unicode) 55 56 57 def testMethods(self): 58 self.failUnlessArgIsBOOL(NSTableView.setAllowsColumnReordering_, 0) 59 self.failUnlessResultIsBOOL(NSTableView.allowsColumnReordering) 60 self.failUnlessArgIsBOOL(NSTableView.setAllowsColumnResizing_, 0) 61 self.failUnlessResultIsBOOL(NSTableView.allowsColumnResizing) 62 self.failUnlessArgIsBOOL(NSTableView.setUsesAlternatingRowBackgroundColors_, 0) 63 self.failUnlessResultIsBOOL(NSTableView.usesAlternatingRowBackgroundColors) 64 self.failUnlessArgIsBOOL(NSTableView.setVerticalMotionCanBeginDrag_, 0) 65 self.failUnlessResultIsBOOL(NSTableView.verticalMotionCanBeginDrag) 66 self.failUnlessResultIsBOOL(NSTableView.canDragRowsWithIndexes_atPoint_) 67 self.failUnlessArgIsInOut(NSTableView.dragImageForRowsWithIndexes_tableColumns_event_offset_, 3) 68 self.failUnlessArgIsBOOL(NSTableView.setDraggingSourceOperationMask_forLocal_, 1) 69 self.failUnlessResultIsBOOL(NSTableView.verticalMotionCanBeginDrag) 70 self.failUnlessArgIsBOOL(NSTableView.setAllowsMultipleSelection_, 0) 71 self.failUnlessResultIsBOOL(NSTableView.allowsMultipleSelection) 72 self.failUnlessArgIsBOOL(NSTableView.setAllowsEmptySelection_, 0) 73 self.failUnlessResultIsBOOL(NSTableView.allowsEmptySelection) 74 self.failUnlessArgIsBOOL(NSTableView.setAllowsColumnSelection_, 0) 75 self.failUnlessResultIsBOOL(NSTableView.allowsColumnSelection) 76 self.failUnlessArgIsBOOL(NSTableView.selectColumnIndexes_byExtendingSelection_, 1) 77 self.failUnlessArgIsBOOL(NSTableView.selectRowIndexes_byExtendingSelection_, 1) 78 self.failUnlessResultIsBOOL(NSTableView.isColumnSelected_) 79 self.failUnlessResultIsBOOL(NSTableView.isRowSelected_) 80 self.failUnlessArgIsBOOL(NSTableView.setAllowsTypeSelect_, 0) 81 self.failUnlessResultIsBOOL(NSTableView.allowsTypeSelect) 82 self.failUnlessResultIsBOOL(NSTableView.textShouldBeginEditing_) 83 self.failUnlessResultIsBOOL(NSTableView.textShouldEndEditing_) 84 self.failUnlessArgIsBOOL(NSTableView.setAutosaveTableColumns_, 0) 85 self.failUnlessResultIsBOOL(NSTableView.autosaveTableColumns) 86 self.failUnlessArgIsBOOL(NSTableView.editColumn_row_withEvent_select_, 3) 87 88 89 self.failUnlessArgIsBOOL(NSTableView.setDrawsGrid_, 0) 90 self.failUnlessResultIsBOOL(NSTableView.drawsGrid) 91 self.failUnlessArgIsBOOL(NSTableView.selectColumn_byExtendingSelection_, 1) 92 self.failUnlessArgIsBOOL(NSTableView.selectRow_byExtendingSelection_, 1) 93 self.failUnlessArgIsInOut(NSTableView.dragImageForRows_event_dragImageOffset_, 2) 94 self.failUnlessArgIsBOOL(NSTableView.setAutoresizesAllColumnsToFit_, 0) 95 self.failUnlessResultIsBOOL(NSTableView.autoresizesAllColumnsToFit) 96 97 98 def testProtocols(self): 99 self.failUnlessResultHasType(TestNSTableViewHelper.numberOfRowsInTableView_, objc._C_NSInteger) 100 self.failUnlessArgHasType(TestNSTableViewHelper.tableView_objectValueForTableColumn_row_, 2, objc._C_NSInteger) 101 self.failUnlessArgHasType(TestNSTableViewHelper.tableView_setObjectValue_forTableColumn_row_, 3, objc._C_NSInteger) 102 self.failUnlessResultIsBOOL(TestNSTableViewHelper.tableView_writeRowsWithIndexes_toPasteboard_) 103 self.failUnlessResultHasType(TestNSTableViewHelper.tableView_validateDrop_proposedRow_proposedDropOperation_, objc._C_NSUInteger) 104 self.failUnlessArgHasType(TestNSTableViewHelper.tableView_validateDrop_proposedRow_proposedDropOperation_, 2, objc._C_NSInteger) 105 self.failUnlessArgHasType(TestNSTableViewHelper.tableView_validateDrop_proposedRow_proposedDropOperation_, 3, objc._C_NSUInteger) 106 self.failUnlessResultIsBOOL(TestNSTableViewHelper.tableView_acceptDrop_row_dropOperation_) 107 self.failUnlessArgHasType(TestNSTableViewHelper.tableView_acceptDrop_row_dropOperation_, 2, objc._C_NSInteger) 108 self.failUnlessArgHasType(TestNSTableViewHelper.tableView_acceptDrop_row_dropOperation_, 3, objc._C_NSUInteger) 109 self.failUnlessResultIsBOOL(TestNSTableViewHelper.tableView_writeRows_toPasteboard_) 110 111 112 self.failUnlessArgHasType(TestNSTableViewHelper.tableView_willDisplayCell_forTableColumn_row_, 3, objc._C_NSInteger) 113 self.failUnlessResultIsBOOL(TestNSTableViewHelper.tableView_shouldEditTableColumn_row_) 114 self.failUnlessArgHasType(TestNSTableViewHelper.tableView_shouldEditTableColumn_row_, 2, objc._C_NSInteger) 115 self.failUnlessResultIsBOOL(TestNSTableViewHelper.selectionShouldChangeInTableView_) 116 self.failUnlessResultIsBOOL(TestNSTableViewHelper.tableView_shouldSelectTableColumn_) 117 self.failUnlessArgHasType(TestNSTableViewHelper.tableView_toolTipForCell_rect_tableColumn_row_mouseLocation_, 2, 'N^' + NSRect.__typestr__) 118 self.failUnlessArgHasType(TestNSTableViewHelper.tableView_toolTipForCell_rect_tableColumn_row_mouseLocation_, 4, objc._C_NSInteger) 119 self.failUnlessArgHasType(TestNSTableViewHelper.tableView_toolTipForCell_rect_tableColumn_row_mouseLocation_, 5, NSPoint.__typestr__) 120 self.failUnlessResultHasType(TestNSTableViewHelper.tableView_heightOfRow_, objc._C_CGFloat) 121 self.failUnlessArgHasType(TestNSTableViewHelper.tableView_heightOfRow_, 1, objc._C_NSInteger) 122 self.failUnlessArgHasType(TestNSTableViewHelper.tableView_typeSelectStringForTableColumn_row_, 2, objc._C_NSInteger) 123 self.failUnlessResultHasType(TestNSTableViewHelper.tableView_nextTypeSelectMatchFromRow_toRow_forString_, objc._C_NSInteger) 124 self.failUnlessArgHasType(TestNSTableViewHelper.tableView_nextTypeSelectMatchFromRow_toRow_forString_, 1, objc._C_NSInteger) 125 self.failUnlessArgHasType(TestNSTableViewHelper.tableView_nextTypeSelectMatchFromRow_toRow_forString_, 2, objc._C_NSInteger) 126 self.failUnlessResultIsBOOL(TestNSTableViewHelper.tableView_shouldTypeSelectForEvent_withCurrentSearchString_) 127 self.failUnlessResultIsBOOL(TestNSTableViewHelper.tableView_shouldShowCellExpansionForTableColumn_row_) 128 self.failUnlessArgHasType(TestNSTableViewHelper.tableView_shouldShowCellExpansionForTableColumn_row_, 2, objc._C_NSInteger) 129 self.failUnlessResultIsBOOL(TestNSTableViewHelper.tableView_shouldTrackCell_forTableColumn_row_) 130 self.failUnlessArgHasType(TestNSTableViewHelper.tableView_shouldTrackCell_forTableColumn_row_, 3, objc._C_NSInteger) 131 self.failUnlessArgHasType(TestNSTableViewHelper.tableView_dataCellForTableColumn_row_, 2, objc._C_NSInteger) 132 self.failUnlessResultIsBOOL(TestNSTableViewHelper.tableView_isGroupRow_) 133 self.failUnlessArgHasType(TestNSTableViewHelper.tableView_isGroupRow_, 1, objc._C_NSInteger) 134 135 136 137if __name__ == "__main__": 138 main() 139