Skip to content

Commit 9c36ba3

Browse files
add missing files
1 parent cbd47d2 commit 9c36ba3

2 files changed

Lines changed: 53 additions & 0 deletions

File tree

erdpy/cli_ledger.py

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
from erdpy.ledger.ledger_app_handler import ElrondLedgerApp
2+
from erdpy import cli_shared
3+
import logging
4+
from typing import Any
5+
6+
logger = logging.getLogger("cli.ledger")
7+
8+
9+
def setup_parser(subparsers: Any) -> Any:
10+
parser = cli_shared.add_group_subparser(subparsers, "ledger", "Get Ledger App addresses and version")
11+
subparsers = parser.add_subparsers()
12+
13+
sub = cli_shared.add_command_subparser(subparsers, "ledger", "addresses", "Get the addresses within Ledger")
14+
sub.add_argument("--num-addresses", required=False, type=int, default=10, help="The number of addresses to fetch")
15+
sub.set_defaults(func=print_addresses)
16+
17+
sub = cli_shared.add_command_subparser(subparsers, "ledger", "version", "Get the version of the Elrond App for Ledger")
18+
sub.set_defaults(func=print_version)
19+
20+
return subparsers
21+
22+
23+
def print_addresses(args):
24+
ledger_app = ElrondLedgerApp()
25+
for i in range(args.num_addresses):
26+
address = ledger_app.get_address(0, i)
27+
print('account index = %d | address index = %d | address: %s' % (0, i, address))
28+
ledger_app.close()
29+
30+
31+
def print_version(args):
32+
ledger_app = ElrondLedgerApp()
33+
print("Elrond App version: " + ledger_app.get_version())
34+
ledger_app.close()

erdpy/tests/test_ledger.py

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
import unittest
2+
3+
from erdpy.ledger.config import compare_versions
4+
from erdpy.ledger.ledger_app_handler import get_error
5+
6+
7+
class LedgerTestCase(unittest.TestCase):
8+
def test_compare_versions(self):
9+
self.assertEqual(compare_versions("v1.0.0", "v1.0.1"), -1)
10+
self.assertEqual(compare_versions("v1.0.1", "v1.0.1"), 0)
11+
self.assertEqual(compare_versions("v1.0.1", "v1.0.0"), 1)
12+
self.assertEqual(compare_versions("v1.0.0.1", "v1.0.0"), 1)
13+
self.assertEqual(compare_versions("v1.0.1", "v1.0.1.0.0.4"), -1)
14+
15+
def test_get_error(self):
16+
self.assertEqual(get_error(0x6E0C), "invalid fee")
17+
self.assertEqual(get_error(0x6E11), "regular signing is deprecated")
18+
self.assertEqual(get_error(0x9000), "")
19+
self.assertEqual(get_error(0x9999999999), "unknown error code: 0x9999999999")

0 commit comments

Comments
 (0)