def testRemoveIssuerCertsFromKeycahin(self): """Test RemoveIssuerCertsFromKeychain.""" self.StubSetup() self.mox.StubOutWithMock(certs, 'DeleteCert') self.mox.StubOutWithMock(certs, 'FindCertificates') c = self.mox.CreateMockAnything() c.osx_fingerprint = 'f' # Remove is successful certs.FindCertificates(issuer_cn='i', keychain='k').AndReturn([c]) certs.logging.debug('Removing cert with fingerprint %s from %s', 'f', 'k').AndReturn(None) certs.DeleteCert('f', password=None, gui=False, keychain='k').AndReturn(None) # Remove fails certs.FindCertificates(issuer_cn='i', keychain='k').AndReturn([c]) certs.logging.debug('Removing cert with fingerprint %s from %s', 'f', 'k').AndReturn(None) certs.DeleteCert('f', password=None, gui=False, keychain='k').AndRaise(certs.CertError('err')) certs.logging.error('Cannot delete old certificate: %s', 'err') self.mox.ReplayAll() # Remove is sucessful certs.RemoveIssuerCertsFromKeychain('i', keychain='k') # Remove fails certs.RemoveIssuerCertsFromKeychain('i', keychain='k') self.mox.VerifyAll()
def testGetCertificatesNoKeychainCertError(self): """Test _GetCertificates with CertError from Certificate class.""" self.StubSetup() self.mox.StubOutWithMock(certs, 'Certificate') command = [certs.CMD_SECURITY, 'find-certificate', '-a', '-p'] cert = '%s\n%s\n%s\n' % (certs.PEM_HEADER, 'cert_body', certs.PEM_FOOTER) output = cert * 2 certs.gmacpyutil.RunProcess(command).AndReturn((output, '', 0)) certs.Certificate(cert.strip()).AndRaise(certs.CertError('err')) certs.logging.info('Encountered an unparseable certificate, continuing.') certs.logging.debug('err') certs.Certificate(cert.strip()).AndReturn('parsed cert') self.mox.ReplayAll() self.assertEqual(['parsed cert'], list(certs._GetCertificates())) self.mox.VerifyAll()