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 testDeleteCert(self): """Test DeleteCert.""" self.StubSetup() command = [certs.CMD_SECURITY, 'delete-certificate', '-Z', 'f'] # Successful deletion certs.gmacpyutil.RunProcess(command, sudo=False, sudo_password=None).AndReturn( ('out', 'err', 0)) # Unsuccessful deletion certs.gmacpyutil.RunProcess(command, sudo=False, sudo_password=None).AndReturn( ('out', 'err', 1)) # Successful deletion, custom keychain certs.gmacpyutil.RunProcess(command + ['k'], sudo=False, sudo_password=None).AndReturn( ('out', 'err', 0)) # Successful deletion, system keychain certs.gmacpyutil.RunProcess(command + [certs.SYSTEM_KEYCHAIN], sudo=True, sudo_password=None).AndReturn( ('out', 'err', 0)) self.mox.ReplayAll() self.assertEqual(None, certs.DeleteCert('f')) self.assertRaises(certs.CertError, certs.DeleteCert, 'f') self.assertEqual(None, certs.DeleteCert('f', keychain='k')) self.assertEqual(None, certs.DeleteCert('f', keychain=certs.SYSTEM_KEYCHAIN)) self.mox.VerifyAll()