def test_delete_key(self): ''' Tests if it delete a key from the GPG keychain ''' ret = {'message': 'Only specify one argument, fingerprint or keyid', 'res': False} ret1 = {'message': 'Required argument, fingerprint or keyid', 'res': False} ret2 = {'message': ('Secret key exists, delete first' ' or pass delete_secret=True.'), 'res': False} ret3 = {'message': ('Secret key for F321F deleted\nPublic' ' key for F321F deleted'), 'res': True} ret4 = {'message': 'Key not available in keychain.', 'res': False} mock_conf = MagicMock(return_value='') mock_user = MagicMock(return_value={'home': 'salt'}) with patch.dict(gpg.__salt__, {'config.option': mock_conf, 'user.info': mock_user}): self.assertDictEqual(gpg.delete_key(keyid='3FAD9F1E', fingerprint='53C'), ret) self.assertDictEqual(gpg.delete_key(), ret1) self.assertDictEqual(gpg.delete_key(keyid='3F0C8E90D459D89A'), ret2) self.assertDictEqual(gpg.delete_key(keyid='3F0C8E90D459D89A', delete_secret=True), ret3) self.assertDictEqual(gpg.delete_key(keyid='3F0C'), ret4)
def test_delete_key(self): ''' Tests if it delete a key from the GPG keychain ''' ret = {'message': 'Only specify one argument, fingerprint or keyid', 'res': False} ret1 = {'message': 'Required argument, fingerprint or keyid', 'res': False} ret2 = {'message': ('Secret key exists, delete first' ' or pass delete_secret=True.'), 'res': False} ret3 = {'message': ('Secret key for F321F deleted\nPublic' ' key for F321F deleted'), 'res': True} ret4 = {'message': 'Key not available in keychain.', 'res': False} mock_conf = MagicMock(return_value='') mock_user = MagicMock(return_value={'home': 'salt'}) with patch.dict(gpg.__salt__, {'config.option': mock_conf, 'user.info': mock_user}): self.assertDictEqual(gpg.delete_key(keyid='3FAD9F1E', fingerprint='53C'), ret) self.assertDictEqual(gpg.delete_key(), ret1) self.assertDictEqual(gpg.delete_key(keyid='3F0C8E90D459D89A'), ret2) self.assertDictEqual(gpg.delete_key(keyid='3F0C8E90D459D89A', delete_secret=True), ret3) self.assertDictEqual(gpg.delete_key(keyid='3F0C'), ret4)
def test_delete_key_with_passphrase_without_gpg_passphrase_in_pillar(gpghome): """ Test gpg.delete_key with passphrase but without gpg_passphrase pillar """ _user_mock = { "shell": "/bin/bash", "workphone": "", "uid": 0, "passwd": "x", "roomnumber": "", "gid": 0, "groups": ["root"], "home": str(gpghome.path), "fullname": "root", "homephone": "", "name": "root", } _list_result = [ { "dummy": "", "keyid": "xxxxxxxxxxxxxxxx", "expires": "2011188692", "sigs": [], "subkeys": [ ["xxxxxxxxxxxxxxxx", "e", "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"] ], "length": "4096", "ownertrust": "-", "sig": "", "algo": "1", "fingerprint": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "date": "1506612692", "trust": "-", "type": "pub", "uids": ["GPG Person <*****@*****.**>"], } ] _expected_result = { "res": True, "message": "gpg_passphrase not available in pillar.", } mock_opt = MagicMock(return_value="root") pillar_mock = MagicMock(return_value=None) with patch.dict(gpg.__salt__, {"user.info": MagicMock(return_value=_user_mock)}): with patch.dict(gpg.__salt__, {"config.option": mock_opt}), patch.dict( gpg.__salt__, {"pillar.get": pillar_mock} ): with patch.object(gpg, "_list_keys", return_value=_list_result): with patch( "salt.modules.gpg.gnupg.GPG.delete_keys" ) as gnupg_delete_keys: ret = gpg.delete_key("xxxxxxxxxxxxxxxx", delete_secret=True) assert ret == _expected_result gnupg_delete_keys.assert_not_called()
def test_delete_key(self): ''' Test gpg.delete_key ''' _user_mock = {u'shell': u'/bin/bash', u'workphone': u'', u'uid': 0, u'passwd': u'x', u'roomnumber': u'', u'gid': 0, u'groups': [ u'root' ], u'home': self.gpghome, u'fullname': u'root', u'homephone': u'', u'name': u'root'} _list_result = [{'dummy': u'', 'keyid': u'xxxxxxxxxxxxxxxx', 'expires': u'2011188692', 'sigs': [], 'subkeys': [[u'xxxxxxxxxxxxxxxx', u'e', u'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx']], 'length': u'4096', 'ownertrust': u'-', 'sig': u'', 'algo': u'1', 'fingerprint': u'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', 'date': u'1506612692', 'trust': u'-', 'type': u'pub', 'uids': [u'GPG Person <*****@*****.**>']}] _expected_result = {u'res': True, u'message': u'Secret key for xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx deleted\nPublic key for xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx deleted'} mock_opt = MagicMock(return_value='root') with patch.dict(gpg.__salt__, {'user.info': MagicMock(return_value=_user_mock)}): with patch.dict(gpg.__salt__, {'config.option': mock_opt}): with patch.object(gpg, '_list_keys', return_value=_list_result): with patch('salt.modules.gpg.gnupg.GPG.delete_keys', MagicMock(return_value='ok')): ret = gpg.delete_key('xxxxxxxxxxxxxxxx', delete_secret=True) self.assertEqual(ret, _expected_result)
def test_delete_key(self): """ Test gpg.delete_key """ _user_mock = { "shell": "/bin/bash", "workphone": "", "uid": 0, "passwd": "x", "roomnumber": "", "gid": 0, "groups": ["root"], "home": self.gpghome, "fullname": "root", "homephone": "", "name": "root", } _list_result = [{ "dummy": "", "keyid": "xxxxxxxxxxxxxxxx", "expires": "2011188692", "sigs": [], "subkeys": [[ "xxxxxxxxxxxxxxxx", "e", "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", ]], "length": "4096", "ownertrust": "-", "sig": "", "algo": "1", "fingerprint": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "date": "1506612692", "trust": "-", "type": "pub", "uids": ["GPG Person <*****@*****.**>"], }] _expected_result = { "res": True, "message": "Secret key for xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx deleted\nPublic key for xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx deleted", } mock_opt = MagicMock(return_value="root") with patch.dict(gpg.__salt__, {"user.info": MagicMock(return_value=_user_mock)}): with patch.dict(gpg.__salt__, {"config.option": mock_opt}): with patch.object(gpg, "_list_keys", return_value=_list_result): with patch( "salt.modules.gpg.gnupg.GPG.delete_keys", MagicMock(return_value="ok"), ): ret = gpg.delete_key("xxxxxxxxxxxxxxxx", delete_secret=True) self.assertEqual(ret, _expected_result)