1 2from PyObjCTools.TestSupport import * 3from Quartz.CoreGraphics import * 4 5class TestCGEventSource (TestCase): 6 def testTypes(self): 7 self.assertIsCFType(CGEventSourceRef) 8 9 def testFunctions(self): 10 self.assertIsInstance(CGEventSourceGetTypeID(), (int, long)) 11 12 src = CGEventSourceCreate(0) 13 self.assertIsInstance(src, CGEventSourceRef) 14 15 v = CGEventSourceGetKeyboardType(src) 16 self.assertIsInstance(v, (int, long)) 17 18 CGEventSourceSetKeyboardType(src, v) 19 20 CGEventSourceSetPixelsPerLine(src, 23) 21 v = CGEventSourceGetPixelsPerLine(src) 22 self.assertIsInstance(v, float) 23 self.assertEqual(v, 23) 24 25 v = CGEventSourceGetSourceStateID(src) 26 self.assertIsInstance(v, (int, long)) 27 28 self.assertResultHasType(CGEventSourceButtonState, objc._C_BOOL) 29 v = CGEventSourceButtonState(0, 0) 30 self.assertIsInstance(v, bool) 31 32 self.assertResultHasType(CGEventSourceKeyState, objc._C_BOOL) 33 v = CGEventSourceKeyState(0, 64) 34 self.assertIsInstance(v, bool) 35 36 v = CGEventSourceFlagsState(0) 37 self.assertIsInstance(v, (int, long)) 38 39 v = CGEventSourceSecondsSinceLastEventType(0, kCGEventLeftMouseDown) 40 self.assertIsInstance(v, float) 41 42 v = CGEventSourceCounterForEventType(0, kCGEventLeftMouseDown) 43 self.assertIsInstance(v, (int, long)) 44 45 CGEventSourceSetUserData(src, 0xabbccdd00112233) 46 v = CGEventSourceGetUserData(src) 47 self.assertIsInstance(v, (int, long)) 48 self.assertEqual(v, 0xabbccdd00112233) 49 50 CGEventSourceSetLocalEventsFilterDuringSuppressionState(src, 51 kCGEventFlagMaskControl|kCGEventFlagMaskCommand, 52 kCGEventSuppressionStateRemoteMouseDrag ) 53 54 m = CGEventSourceGetLocalEventsFilterDuringSuppressionState(src, 55 kCGEventSuppressionStateRemoteMouseDrag ) 56 self.assertIsInstance(m, (int, long)) 57 58 CGEventSourceSetLocalEventsSuppressionInterval(src, 1.5) 59 v = CGEventSourceGetLocalEventsSuppressionInterval(src) 60 self.assertEqual(v, 1.5) 61 62if __name__ == "__main__": 63 main() 64