xmr_mainnet.py 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #!/usr/bin/env python3
  2. #
  3. # MMGen Wallet, a terminal-based cryptocurrency wallet
  4. # Copyright (C)2013-2025 The MMGen Project <mmgen@tuta.io>
  5. """
  6. test.objtest_d.xmr_mainnet: XMR mainnet test vectors for MMGen data objects
  7. """
  8. from mmgen.protocol import init_proto
  9. from mmgen.addr import MMGenID
  10. from ..include.common import cfg
  11. proto = init_proto(cfg, 'xmr', need_amt=True)
  12. tests = {
  13. 'MMGenID': {
  14. 'arg1': 'id_str',
  15. 'bad': (
  16. {'id_str': 'F00BAA12', 'proto': proto},
  17. {'id_str': 'F00BAA12:C:99', 'proto': proto},
  18. {'id_str': 'F00BAA12:M', 'proto': proto},
  19. {'id_str': 'F00BAA12:M:', 'proto': proto},
  20. {'id_str': 'F00BAA12:M:99-FOO', 'proto': proto},
  21. {'id_str': 'F00BAA12:M:99-1', 'proto': proto},
  22. {'id_str': 'F00BAA12:M:99-x/y', 'proto': proto},
  23. {'id_str': 'F00BAA12:M:99-1/y', 'proto': proto},
  24. {'id_str': 'F00BAA12:M:0-1/1', 'proto': proto},
  25. {'id_str': 'F00BAA12:M:1-0/-1', 'proto': proto},
  26. {'id_str': 'F00BAA12:1-0/0', 'proto': proto},
  27. {'id_str': 'F00BAA12:M:1-111111/3', 'proto': proto},
  28. ),
  29. 'good': (
  30. {'id_str': 'F00BAA12:M:1', 'proto': proto},
  31. {'id_str': 'F00BAA12:M:1-0/0', 'proto': proto},
  32. {'id_str': 'F00BAA12:M:9999999-99999/99999', 'proto': proto},
  33. ),
  34. },
  35. }