algorand / algorand/py-algorand-sdk
Python algosdk wallet.Wallet.delete_key() always returns True
- Langage dominant
- Python
- Étoiles
- 274
- Forks
- 145
- Merge moyen
- 3 h 1 min
- PR mergées (30 j)
- 2
Description
### 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
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Évaluation
Cette issue n'a pas encore été évaluée.