Skip to content

Commit 56914bb

Browse files
authored
Adds delete ssh key method (#260)
* Add delete ssh key method
1 parent 26f533a commit 56914bb

2 files changed

Lines changed: 16 additions & 0 deletions

File tree

maas/client/viscera/sshkeys.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,3 +41,9 @@ class SSHKey(Object, metaclass=SSHKeyType):
4141
id = ObjectField.Checked("id", check(int), readonly=True)
4242
key = ObjectField.Checked("key", check(str), readonly=True)
4343
keysource = ObjectField.Checked("keysource", check_optional(str), readonly=True)
44+
45+
async def delete(self):
46+
"""Delete this key."""
47+
await self._handler.delete(
48+
id=self.id,
49+
)

maas/client/viscera/tests/test_sshkeys.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,3 +48,13 @@ def test__sshkey_read(self):
4848
key_dict = {"id": key_id, "key": make_string_without_spaces(), "keysource": ""}
4949
SSHKey._handler.read.return_value = key_dict
5050
self.assertThat(SSHKey.read(id=key_id), Equals(SSHKey(key_dict)))
51+
52+
def test__sshkey_delete(self):
53+
"""SSHKeys.read() returns a single SSH key."""
54+
SSHKey = make_origin().SSHKey
55+
key_id = random.randint(0, 100)
56+
ssh_key = SSHKey(
57+
{"id": key_id, "key": make_string_without_spaces(), "keysource": ""}
58+
)
59+
ssh_key.delete()
60+
SSHKey._handler.delete.assert_called_once_with(id=key_id)

0 commit comments

Comments
 (0)