def test_import_rsa_key(self):
     KeychainManager.generate_rsa_key(self.rsa_file_path, 2048)
     km = KeychainManager("some_keychain")
     km.create()
     self.assertTrue('1 key imported' in km.import_rsa_key(self.rsa_file_path))
     km.delete()
     os.unlink(self.rsa_file_path)
 def test_filename_keychain(self):
     km = KeychainManager("some_keychain")
     self.assertFalse(km.exists())
     self.assertEqual(km.filename, None)
     km.create()
     self.assertNotEqual(km.filename, None)
     km.delete()
     self.assertFalse(km.exists())
 def test_generic_password_management(self):
     kcm = KeychainManager('some_keychain')
     kcm.create()
     kcm.add_generic_password('*****@*****.**', 'someservice', 'testpass')
     result = kcm.find_generic_password({'service': 'someservice'})
     self.assertTrue('password' in result)
     kcm.delete_generic_password({'service': 'someservice'})
     self.assertRaises(
         subprocess.CalledProcessError,
         lambda: kcm.find_generic_password({'service': 'someservice'})
     )
     kcm.delete()
 def test_create_keychain(self):
     km = KeychainManager("some_keychain")
     km.create()
     self.assertTrue(km.exists())
     km.delete()
     self.assertFalse(km.exists())
 def test_default_keychain_manager(self):
     kcm = KeychainManager()
     self.assertTrue(kcm.exists())
     self.assertTrue("login" in kcm.filename)
     self.assertRaises(KeychainException, lambda: kcm.create())
     self.assertRaises(KeychainException, lambda: kcm.delete())