def testClasses(self): # Ensure that python numbers are proxied using the right proxy type for v in (0, 1, 2**32+1, 2**64+1, 42.5): self.assert_(OC_TestNumber.numberClass_(v) is OC_PythonNumber) # The booleans True and False must be proxied as the corresponding # NSNumber constants, otherwise lowlevel Cocoa/CoreFoundation code # get's upset. boolClass = objc.lookUpClass('NSCFBoolean') for v in (True, False): self.assert_(OC_TestNumber.numberClass_(v) is boolClass) self.assert_(objc.repythonify(v) is v)
def testClasses(self): # Ensure that python numbers are proxied using the right proxy type for v in (0, 1, 2**32 + 1, 2**64 + 1, 42.5): self.assert_(OC_TestNumber.numberClass_(v) is OC_PythonNumber) # The booleans True and False must be proxied as the corresponding # NSNumber constants, otherwise lowlevel Cocoa/CoreFoundation code # get's upset. boolClass = objc.lookUpClass('NSCFBoolean') for v in (True, False): self.assert_(OC_TestNumber.numberClass_(v) is boolClass) self.assert_(objc.repythonify(v) is v)
def testClass(self): for m in ('numberWithInt_', 'numberWithFloat_', 'numberWithDouble_', 'numberWithShort_'): v = getattr(NSNumber, m)(0) self.assertIsInstance(v, NSNumber) self.assertIsNotInstance(v, OC_PythonNumber) self.assertIs(OC_TestNumber.numberClass_(v), NSCFNumber)
def testClasses(self): # Ensure that python numbers are proxied using the right proxy type for v in (0, 1, 2 ** 32 + 1, 2 ** 64 + 1, 42.5): self.assertIs(OC_TestNumber.numberClass_(v), OC_BuiltinPythonNumber) # The booleans True and False must be proxied as the corresponding # NSNumber constants, otherwise lowlevel Cocoa/CoreFoundation code # get's upset. try: boolClass = objc.lookUpClass("__NSCFBoolean") except objc.error: boolClass = objc.lookUpClass("NSCFBoolean") for v in (True, False): self.assertIs(OC_TestNumber.numberClass_(v), boolClass) self.assertIs(objc.repythonify(v), v)