algorand / algorand/py-algorand-sdk
Python algosdk wallet.Wallet.delete_key() always returns True
- 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.