algorand / algorand/py-algorand-sdk

Python algosdk wallet.Wallet.delete_key() always returns True

Abierto
#472 3 comentarios 0 reacciones 0 asignados Ver en GitHub
bug good first issue
Lenguaje dominante
Python
Estrellas
274
Forks
145
Merge medio
3 h 1 min
PR fusionados (30 d)
2

Descripción

### wallet.Wallet.delete_key() always return True

Per the docs, `Wallet.delete_key()`, should return True if the account has been deleted.
Thus, if the wallet does not contain the account, then False is the expected return result.
However, `Walletdelete_key()` always returns True.

### Your environment

py-algorand-sdk 2.1.2
algokit 1.0.1

### Steps to reproduce

```python
import unittest

from algosdk.wallet import Wallet
from beaker import sandbox

class KmdWalletDeleteKeyTestCase(unittest.TestCase):
def test_delete_key(self):
kmd_client = sandbox.kmd.get_client()

# create new wallet
name = "foo"
password = "bar"
kmd_client.create_wallet(name, password)
wallet = Wallet(name, password, kmd_client)

# generate new wallet account
address = wallet.generate_key()
self.assertTrue(address in wallet.list_keys())

# delete wallet account
self.assertTrue(wallet.delete_key(address))
self.assertFalse(address in wallet.list_keys())

# delete wallet account again
self.assertFalse(
wallet.delete_key(address),
"should return False because the wallet does not contain the account",
) # this assertion fails

if __name__ == "__main__":
unittest.main()

```

### Expected behaviour
`Wallet.delete_key(address)` should return False if the wallet does not contain the specified address

### Actual behaviour
`Wallet.delete_key(address)` always returns True, even if the wallet does not contain the specified address

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.