Commit graph

118 commits

Author SHA1 Message Date
ab41b78863
new platform global constant 2026-05-17 18:03:32 +00:00
f840069ecb
update copyright dates 2026-02-11 13:02:12 +00:00
2b7080c227
subprocess.run(): use text arg (10 files) 2025-10-03 10:34:04 +00:00
4573e170ed
test suite: use match statement where practicable (21 files) 2025-09-23 09:20:53 +00:00
e54f039690
update copyright dates 2025-02-16 14:42:27 +00:00
74bc49f973
whitespace: tests, top level 2024-10-18 10:32:12 +00:00
5150ca586b
update file header 2024-10-18 10:32:06 +00:00
66521a07f2
update --longhelp text 2024-10-08 12:55:58 +00:00
b1ad293bae
minor testing fixes 2024-07-06 14:05:53 +00:00
8e46932475
update copyright dates 2024-01-19 11:05:10 +00:00
4c49a6e59c
launch test and helper scripts with main.launch() 2023-12-12 10:19:51 +00:00
63a529845a
main.py, test suite: minor cleanups 2023-12-12 10:19:50 +00:00
99e7057856
mmgen-tool: new command: decrypt_keystore
command rename: `extract_key_from_geth_wallet` -> `decrypt_geth_keystore`
2023-11-30 10:53:40 +00:00
a7e816f98e
test suite: make test scripts importable as modules 2023-10-13 09:51:14 +00:00
6a21044127
test suite: improve initialization of sys.path and repo_root 2023-10-13 09:51:14 +00:00
60ce46c768
test rename: test.py -> cmdtest.py 2023-10-13 09:51:14 +00:00
0a1e3c3c98
pylint integration: gc.platform -> sys.platform 2023-10-13 09:51:12 +00:00
2076c0308b
pylint (test suite) - various cleanups 2023-10-11 12:58:53 +00:00
775e596dda
pylint (test suite) - unused variables 2023-10-11 12:58:52 +00:00
9a8f6216f7
pylint (test suite) - f-strings 2023-10-11 12:58:52 +00:00
033822f565
pylint (test suite) - use "is" for bool,None,type equality 2023-10-11 12:58:52 +00:00
7b32c412d5
pylint (test suite) - imports 2023-10-11 12:58:51 +00:00
b8fb987bb3
pylint (test suite) - inherit from object implicitly 2023-10-11 12:58:51 +00:00
01430166e5
whitespace, comments, docstrings (test suite) 2023-10-11 12:58:51 +00:00
f626fc2e05
missing import fixes throughout 2023-10-03 14:27:57 +00:00
1f8261ccab
tooltest.py: import cleanups, --testing-status fixes 2023-10-03 14:27:56 +00:00
31a6e62a24
test suite: sys.path, overlay, PYTHONPATH cleanups 2023-09-26 10:23:40 +00:00
845470302d
test suite: remove --system option, minor cleanups 2023-09-26 10:23:40 +00:00
9e1935ad19
opts.init() -> Config() 2023-04-04 16:04:10 +00:00
c7adb56e38
Config API, Part I
This patch eliminates the global configuration variables `opt` and `g`, making
all functions and class instances locally configurable.  Configuration data is
passed to functions and constructors via the `cfg` parameter and made available
to methods in `self.cfg`.

Local configuration free from dependence on the command line will enable the
creation of multiple, independently configured instances of MMGen’s data
objects within a single process.

Potential applications include testing (tracking wallets configured to interact
with spawned processes, for example) and the use of MMGen as a library for
other projects.

This patch completes most of the work required to enable the API.  The full
implementation will appear in a forthcoming commit.
2023-03-28 18:14:37 +00:00
6cd8856912
minor whitespace, cleanups 2023-03-28 18:14:37 +00:00
c3ce1ab8e3
globalvars.py: new GlobalConstants (gc), GlobalVars (gv) classes
- The attributes of GlobalConstants are non-configurable.  They’re constant
  for a given machine, user, executable and MMGen release.

- The attributes of GlobalVars, `stderr` and `stdout`, are used by the test
  suite to redirect msg() and friends to /dev/null.

- All the aforementioned attributes formerly belonged to GlobalConfig.
2023-03-28 18:14:36 +00:00
1aeefd64ae
update copyright dates 2023-01-03 10:36:07 +00:00
20f4b12832
module docstring cleanups [134 files] 2022-11-14 09:54:07 +00:00
642b45b2e3
mmgen-tool usage: various fixes and cleanups 2022-08-15 12:38:46 +00:00
840b4d1d43
test.py: move tmpdirs, move config code to test_py_d.cfg 2022-07-27 17:09:00 +00:00
44cfe1c3dd
various changes and fixes throughout 2022-04-28 11:00:50 +00:00
937fb94470
tool addr2pubhash(), pubhash2addr(): bugfixes 2022-02-14 10:18:43 +00:00
41376eb515
new MMGenSystemExit exception; remove rdie(), ydie() 2022-02-05 13:32:56 +00:00
0ac28869b3
remove unneeded 'add_opts' argument in opts.init() calls 2022-01-21 11:23:43 +00:00
126a09d57d
obj.py: move MMGenAddrType and other address-related data objects to addr.py 2022-01-15 14:00:09 +00:00
545406aea4
addr.py: move PubKey and PrivKey to key.py 2022-01-15 14:00:08 +00:00
1a896d9af9
update copyright dates 2022-01-04 19:51:22 +00:00
554670b713
overlay_setup(): use passed value of repo_root 2021-10-05 11:57:34 +00:00
96a250b51d
test suite: run scripts from overlay tree
Rationale of this commit: to relocate some ugly test-related code from the MMGen
package tree to the test tree, as well as to enable deterministic testing
(implemented in the next commit).

The overlay tree is a symlinked mirror of the MMGen package dir with a few
monkey-patched modules.

The monkey-patching is conditional, so the modules are certain to get tested in
their unpatched state as well.
2021-10-03 17:40:02 +00:00
0493f8077b
test suite: use getrand() instead of os.urandom() 2021-10-02 17:54:12 +00:00
ffa6d44834
test suite: add end_msg() 2021-10-02 17:54:11 +00:00
6692a43d59
f-strings, whitespace (test files) [44 files patched] 2021-09-29 21:17:57 +00:00
cb98afda79
new command: mmgen-xmrwallet, replacing mmgen-tool xmrwallet
- `wallets` arg is now 3rd positional arg
- tool keyword args are now command options

Old and new invocation examples:

    OLD: mmgen-tool xmrwallet sync *.akeys.mmenc wallets=3-5
    NEW: mmgen-xmrwallet sync *.akeys.mmenc 3-5

    OLD: mmgen-tool xmrwallet sweep *.akeys.mmenc wallets=3:2 tx_relay_daemon=foo.onion:18081:127.0.0.1:9052
    NEW: mmgen-xmrwallet --tx-relay-daemon=foo.onion:18081:127.0.0.1:9052 sweep *.akeys.mmenc 3:2
2021-06-08 11:46:13 +00:00
35b8414c28
mmgen-tool: Monero wallet ops API change
- keyaddrlist2monerowallets -> xmrwallet create
- syncmonerowallets         -> xmrwallet sync
2021-04-17 13:27:54 +00:00