1 2from PyObjCTools.TestSupport import * 3from AppKit import * 4 5class TestNSDraggingHelper (NSObject): 6 def draggingSourceOperationMask(self): return 1 7 def draggingLocation(self): return 1 8 def draggedImageLocation(self): return 1 9 def draggingSource(self): return 1 10 def draggingSequenceNumber(self): return 1 11 def slideDraggedImageTo_(self, v): pass 12 13 def draggingEntered_(self, sender): return 1 14 def draggingUpdated_(self, sender): return 1 15 def draggingExited_(self, sender): pass 16 def prepareForDragOperation_(self, sender): return 1 17 def performDragOperation_(self, sender): return 1 18 def concludeDragOperation_(self, sender): pass 19 def draggingEnded_(self, sender): pass 20 def wantsPeriodicDraggingUpdates(self): return 1 21 22 def draggingSourceOperationMaskForLocal_(self, v): return 1 23 def draggedImage_beganAt_(self, v, v2): pass 24 def draggedImage_endedAt_operation_(self, v, v2, v3): pass 25 def draggedImage_movedTo_(self, v, v2): pass 26 def ignoreModifierKeysWhileDragging(self): return 1 27 def draggedImage_endedAt_deposited_(self, i, p, f): pass 28 29class TestNSDragging (TestCase): 30 def testConstants(self): 31 self.assertEqual(NSDragOperationNone, 0) 32 self.assertEqual(NSDragOperationCopy, 1) 33 self.assertEqual(NSDragOperationLink, 2) 34 self.assertEqual(NSDragOperationGeneric, 4) 35 self.assertEqual(NSDragOperationPrivate, 8) 36 self.assertEqual(NSDragOperationAll_Obsolete, 15) 37 self.assertEqual(NSDragOperationMove, 16) 38 self.assertEqual(NSDragOperationDelete, 32) 39 self.assertEqual(NSDragOperationEvery, -1) 40 41 self.assertEqual(NSDragOperationAll, NSDragOperationAll_Obsolete) 42 43 def testProtocols(self): 44 self.assertResultHasType(TestNSDraggingHelper.draggingSourceOperationMask, objc._C_NSUInteger) 45 self.assertResultHasType(TestNSDraggingHelper.draggingLocation, NSPoint.__typestr__) 46 self.assertResultHasType(TestNSDraggingHelper.draggedImageLocation, NSPoint.__typestr__) 47 self.assertResultHasType(TestNSDraggingHelper.draggingSequenceNumber, objc._C_NSInteger) 48 self.assertArgHasType(TestNSDraggingHelper.slideDraggedImageTo_, 0, NSPoint.__typestr__) 49 50 self.assertResultHasType(TestNSDraggingHelper.draggingEntered_, objc._C_NSUInteger) 51 self.assertResultHasType(TestNSDraggingHelper.draggingUpdated_, objc._C_NSUInteger) 52 self.assertResultIsBOOL(TestNSDraggingHelper.prepareForDragOperation_) 53 self.assertResultIsBOOL(TestNSDraggingHelper.performDragOperation_) 54 self.assertResultIsBOOL(TestNSDraggingHelper.wantsPeriodicDraggingUpdates) 55 56 self.assertResultHasType(TestNSDraggingHelper.draggingSourceOperationMaskForLocal_, objc._C_NSUInteger) 57 self.assertArgIsBOOL(TestNSDraggingHelper.draggingSourceOperationMaskForLocal_, 0) 58 self.assertArgHasType(TestNSDraggingHelper.draggedImage_beganAt_, 1, NSPoint.__typestr__) 59 self.assertArgHasType(TestNSDraggingHelper.draggedImage_endedAt_operation_, 1, NSPoint.__typestr__) 60 self.assertArgHasType(TestNSDraggingHelper.draggedImage_endedAt_operation_, 2, objc._C_NSUInteger) 61 self.assertArgHasType(TestNSDraggingHelper.draggedImage_movedTo_, 1, NSPoint.__typestr__) 62 self.assertResultIsBOOL(TestNSDraggingHelper.ignoreModifierKeysWhileDragging) 63 self.assertArgHasType(TestNSDraggingHelper.draggedImage_endedAt_deposited_, 1, NSPoint.__typestr__) 64 self.assertArgIsBOOL(TestNSDraggingHelper.draggedImage_endedAt_deposited_, 2) 65 66if __name__ == "__main__": 67 main() 68