def test_functions(self): self.assertIsInstance(Security.SecTrustGetTypeID(), (int, long)) self.assertResultHasType(Security.SecTrustCreateWithCertificates, objc._C_INT) self.assertArgHasType(Security.SecTrustCreateWithCertificates, 0, objc._C_ID) self.assertArgHasType(Security.SecTrustCreateWithCertificates, 1, objc._C_ID) self.assertArgHasType( Security.SecTrustCreateWithCertificates, 2, objc._C_OUT + objc._C_PTR + objc._C_ID, ) self.assertArgIsCFRetained(Security.SecTrustCreateWithCertificates, 2) self.assertResultHasType(Security.SecTrustSetPolicies, objc._C_INT) self.assertArgHasType(Security.SecTrustSetPolicies, 0, objc._C_ID) self.assertArgHasType(Security.SecTrustSetPolicies, 1, objc._C_ID) self.assertResultHasType(Security.SecTrustCopyPolicies, objc._C_INT) self.assertArgHasType(Security.SecTrustCopyPolicies, 0, objc._C_ID) self.assertArgHasType( Security.SecTrustCopyPolicies, 1, objc._C_OUT + objc._C_PTR + objc._C_ID ) self.assertArgIsCFRetained(Security.SecTrustCopyPolicies, 1) self.assertResultHasType(Security.SecTrustSetAnchorCertificates, objc._C_INT) self.assertArgHasType(Security.SecTrustSetAnchorCertificates, 0, objc._C_ID) self.assertArgHasType(Security.SecTrustSetAnchorCertificates, 1, objc._C_ID) self.assertResultHasType( Security.SecTrustSetAnchorCertificatesOnly, objc._C_INT ) self.assertArgHasType(Security.SecTrustSetAnchorCertificatesOnly, 0, objc._C_ID) self.assertArgHasType( Security.SecTrustSetAnchorCertificatesOnly, 1, objc._C_NSBOOL ) self.assertResultHasType( Security.SecTrustCopyCustomAnchorCertificates, objc._C_INT ) self.assertArgHasType( Security.SecTrustCopyCustomAnchorCertificates, 0, objc._C_ID ) self.assertArgHasType( Security.SecTrustCopyCustomAnchorCertificates, 1, objc._C_OUT + objc._C_PTR + objc._C_ID, ) self.assertArgIsCFRetained(Security.SecTrustCopyCustomAnchorCertificates, 1) self.assertResultHasType(Security.SecTrustSetVerifyDate, objc._C_INT) self.assertArgHasType(Security.SecTrustSetVerifyDate, 0, objc._C_ID) self.assertArgHasType(Security.SecTrustSetVerifyDate, 1, objc._C_ID) self.assertResultHasType(Security.SecTrustGetVerifyTime, objc._C_DBL) self.assertArgHasType(Security.SecTrustGetVerifyTime, 0, objc._C_ID) self.assertResultHasType(Security.SecTrustSetKeychains, objc._C_INT) self.assertArgHasType(Security.SecTrustSetKeychains, 0, objc._C_ID) self.assertArgHasType(Security.SecTrustSetKeychains, 1, objc._C_ID) self.assertFalse(hasattr(Security, "SecTrustSetParameters")) self.assertFalse(hasattr(Security, "SecTrustGetResult")) self.assertFalse(hasattr(Security, "SecTrustGetCssmResult")) self.assertFalse(hasattr(Security, "SecTrustGetCssmResultCode")) self.assertFalse(hasattr(Security, "SecTrustGetTPHandle")) self.assertResultHasType(Security.SecTrustCopyAnchorCertificates, objc._C_INT) self.assertArgHasType( Security.SecTrustCopyAnchorCertificates, 0, objc._C_OUT + objc._C_PTR + objc._C_ID, ) self.assertArgIsCFRetained(Security.SecTrustCopyAnchorCertificates, 0)