chia-blockchain 2.5.6rc2__py3-none-any.whl → 2.5.7rc2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- chia/_tests/blockchain/blockchain_test_utils.py +6 -7
- chia/_tests/blockchain/test_augmented_chain.py +4 -3
- chia/_tests/blockchain/test_blockchain.py +10 -5
- chia/_tests/clvm/coin_store.py +1 -1
- chia/_tests/cmds/cmd_test_utils.py +84 -97
- chia/_tests/cmds/test_dev_gh.py +1 -1
- chia/_tests/cmds/test_farm_cmd.py +56 -2
- chia/_tests/cmds/wallet/test_consts.py +3 -1
- chia/_tests/cmds/wallet/test_did.py +3 -8
- chia/_tests/cmds/wallet/test_nft.py +6 -6
- chia/_tests/cmds/wallet/test_notifications.py +39 -21
- chia/_tests/cmds/wallet/test_vcs.py +2 -1
- chia/_tests/cmds/wallet/test_wallet.py +160 -136
- chia/_tests/conftest.py +51 -26
- chia/_tests/core/cmds/test_wallet.py +4 -3
- chia/_tests/core/consensus/test_pot_iterations.py +71 -24
- chia/_tests/core/custom_types/test_proof_of_space.py +60 -30
- chia/_tests/core/custom_types/test_spend_bundle.py +1 -4
- chia/_tests/core/data_layer/conftest.py +7 -2
- chia/_tests/core/data_layer/old_format/__init__.py +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-005876c1cdc4d5f1726551b207b9f63efc9cd2f72df80a3a26a1ba73d40d6745-delta-23-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-005876c1cdc4d5f1726551b207b9f63efc9cd2f72df80a3a26a1ba73d40d6745-full-23-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-01b36e72a975cdc00d6514eea81668d19e8ea3150217ae98cb3361688a016fab-delta-9-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-01b36e72a975cdc00d6514eea81668d19e8ea3150217ae98cb3361688a016fab-full-9-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-06147c3b12d73e9b83b686a8c10b4a36a513c8a93c0ff99ae197f06326278be9-delta-5-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-06147c3b12d73e9b83b686a8c10b4a36a513c8a93c0ff99ae197f06326278be9-full-5-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-073c051a5934ad3b8db39eee2189e4300e55f48aaa17ff4ae30eeae088ff544a-delta-22-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-073c051a5934ad3b8db39eee2189e4300e55f48aaa17ff4ae30eeae088ff544a-full-22-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-0cc077559b9c7b4aefe8f8f591c195e0779bebdf89f2ad8285a00ea5f859d965-delta-1-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-0cc077559b9c7b4aefe8f8f591c195e0779bebdf89f2ad8285a00ea5f859d965-full-1-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-16377275567b723b20936d3f1ec0a2fd83f6ac379b922351a5e4c54949069f3b-delta-2-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-16377275567b723b20936d3f1ec0a2fd83f6ac379b922351a5e4c54949069f3b-full-2-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-1cb824a7a5f02cd30ac6c38e8f6216780d9bfa2d24811d282a368dcd541438a7-delta-29-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-1cb824a7a5f02cd30ac6c38e8f6216780d9bfa2d24811d282a368dcd541438a7-full-29-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-27b89dc4809ebc5a3b87757d35e95e2761d978cf121e44fa2773a5c06e4cc7b5-delta-28-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-27b89dc4809ebc5a3b87757d35e95e2761d978cf121e44fa2773a5c06e4cc7b5-full-28-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-28a6b7c134abfaeb0ab58a018313f6c87a61a40a4d9ec9bedf53aa1d12f3ee37-delta-7-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-28a6b7c134abfaeb0ab58a018313f6c87a61a40a4d9ec9bedf53aa1d12f3ee37-full-7-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-30a6bfe7cecbeda259a295dc6de3a436357f52388c3b03d86901e7da68565aeb-delta-19-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-30a6bfe7cecbeda259a295dc6de3a436357f52388c3b03d86901e7da68565aeb-full-19-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-343a2bf9add798e3ac2e6a571823cf9fa7e8a1bed532143354ead2648bd036ef-delta-10-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-343a2bf9add798e3ac2e6a571823cf9fa7e8a1bed532143354ead2648bd036ef-full-10-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-4d90efbc1fb3df324193831ea4a57dd5e10e67d9653343eb18d178272adb0447-delta-17-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-4d90efbc1fb3df324193831ea4a57dd5e10e67d9653343eb18d178272adb0447-full-17-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-4dd2ea099e91635c441f40b36d3f84078a2d818d2dc601c7278e72cbdfe3eca8-delta-20-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-4dd2ea099e91635c441f40b36d3f84078a2d818d2dc601c7278e72cbdfe3eca8-full-20-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-509effbdca78639023b933ce6c08a0465fb247e1cd5329e9e9c553940e4b6e46-delta-31-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-509effbdca78639023b933ce6c08a0465fb247e1cd5329e9e9c553940e4b6e46-full-31-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-5379a4d9ff29c29d1ef0906d22e82c52472753d31806189ab813c43365341b78-delta-40-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-5379a4d9ff29c29d1ef0906d22e82c52472753d31806189ab813c43365341b78-full-40-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-55908eda5686a8f89e4c50672cbe893ec1734fb23449dc03325efe7c414f9aa4-delta-49-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-55908eda5686a8f89e4c50672cbe893ec1734fb23449dc03325efe7c414f9aa4-full-49-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-57cc2691fb1fb986c99a58bcb0e029d0cd0cff41553d703147c54196d7d9ca63-delta-14-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-57cc2691fb1fb986c99a58bcb0e029d0cd0cff41553d703147c54196d7d9ca63-full-14-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-5943bf8ae4f5e59969d8570e4f40a8223299febdcfbcf188b3b3e2ab11044e18-delta-34-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-5943bf8ae4f5e59969d8570e4f40a8223299febdcfbcf188b3b3e2ab11044e18-full-34-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-6518527b7c939bee60ce6b024cbe90d3b9d8913c56b8ce11a4df5da7ff7db1c8-delta-8-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-6518527b7c939bee60ce6b024cbe90d3b9d8913c56b8ce11a4df5da7ff7db1c8-full-8-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-66ff26a26620379e14a7c91252d27ee4dbe06ad69a3a390a88642fe757f2b288-delta-45-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-66ff26a26620379e14a7c91252d27ee4dbe06ad69a3a390a88642fe757f2b288-full-45-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-6bd0a508ee2c4afbe9d4daa811139fd6e54e7f4e16850cbce999fa30f8bdccd2-delta-6-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-6bd0a508ee2c4afbe9d4daa811139fd6e54e7f4e16850cbce999fa30f8bdccd2-full-6-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-6ce850d0d77ca743fcc2fc792747472e5d2c1c0813aa43abbb370554428fc897-delta-48-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-6ce850d0d77ca743fcc2fc792747472e5d2c1c0813aa43abbb370554428fc897-full-48-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-6eb4ca2e1552b156c5969396b49070eb08ad6c96b347359387519be59f7ccaed-delta-26-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-6eb4ca2e1552b156c5969396b49070eb08ad6c96b347359387519be59f7ccaed-full-26-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-71c797fb7592d3f0a5a20c79ab8497ddaa0fd9ec17712e109d25c91b3f3c76e5-delta-3-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-71c797fb7592d3f0a5a20c79ab8497ddaa0fd9ec17712e109d25c91b3f3c76e5-full-3-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-73357026053d5a4969e7a6b9aeeef91c14cc6d5f32fc700fe6d21d2a1b22496c-delta-25-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-73357026053d5a4969e7a6b9aeeef91c14cc6d5f32fc700fe6d21d2a1b22496c-full-25-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-7c897e5c46e834ced65bde7de87716acfaa5dffbdb30b5cd9377d8c319df2034-delta-35-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-7c897e5c46e834ced65bde7de87716acfaa5dffbdb30b5cd9377d8c319df2034-full-35-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-87b8394d80d08117a5a1cd04ed8a682564eab7197a2c090159863591b5108874-delta-4-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-87b8394d80d08117a5a1cd04ed8a682564eab7197a2c090159863591b5108874-full-4-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-89eb40b9cc0921c5f5c3feb20927c13a9ada5760f82d219dcee153b7d400165c-delta-41-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-89eb40b9cc0921c5f5c3feb20927c13a9ada5760f82d219dcee153b7d400165c-full-41-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-8b649433156b8c924436cdec9c6de26106fd6f73a0528570f48748f7b40d7f8a-delta-21-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-8b649433156b8c924436cdec9c6de26106fd6f73a0528570f48748f7b40d7f8a-full-21-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-8d364023a0834c8c3077e236a465493acbf488e4f9d1f4c6cc230343c10a8f7d-delta-42-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-8d364023a0834c8c3077e236a465493acbf488e4f9d1f4c6cc230343c10a8f7d-full-42-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-925689e24a3d98d98676d816cdd8b73e7b2df057d9d4503da9b27bf91d79666c-delta-38-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-925689e24a3d98d98676d816cdd8b73e7b2df057d9d4503da9b27bf91d79666c-full-38-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-937be3d428b19f521be4f98faecc3307ae11ee731c76992f417fa4268d13859e-delta-11-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-937be3d428b19f521be4f98faecc3307ae11ee731c76992f417fa4268d13859e-full-11-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-97f34af499b79e2111fc296a598fc9654c2467ea038dfea41fd58241fb3642de-delta-32-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-97f34af499b79e2111fc296a598fc9654c2467ea038dfea41fd58241fb3642de-full-32-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-9d1b737243b8a1d0022f2b36ac53333c6280354a74d77f2a3642dcab35204e59-delta-33-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-9d1b737243b8a1d0022f2b36ac53333c6280354a74d77f2a3642dcab35204e59-full-33-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-a6663f98ef6ddf6db55f01163e34bb2e87aa82f0347e79ce31e8dbfa390c480c-delta-47-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-a6663f98ef6ddf6db55f01163e34bb2e87aa82f0347e79ce31e8dbfa390c480c-full-47-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-aa77376d1ccd3664e5c6366e010c52a978fedbf40f5ce262fee71b2e7fe0c6a9-delta-50-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-aa77376d1ccd3664e5c6366e010c52a978fedbf40f5ce262fee71b2e7fe0c6a9-full-50-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-b0f28514741ed1a71f5c6544bf92f9e0e493c5f3cf28328909771d8404eff626-delta-24-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-b0f28514741ed1a71f5c6544bf92f9e0e493c5f3cf28328909771d8404eff626-full-24-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-b3efee5358e6eb89ab3b60db2d128d57eef39e8538fb63c5632412d4f8e7d09e-delta-44-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-b3efee5358e6eb89ab3b60db2d128d57eef39e8538fb63c5632412d4f8e7d09e-full-44-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-bb0b56b6eb7acbb4e80893b04c72412fe833418232e1ed7b06d97d7a7f08b4e1-delta-16-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-bb0b56b6eb7acbb4e80893b04c72412fe833418232e1ed7b06d97d7a7f08b4e1-full-16-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-bc45262b757ff494b53bd2a8fba0f5511cc1f9c2a2c5360e04ea8cebbf6409df-delta-13-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-bc45262b757ff494b53bd2a8fba0f5511cc1f9c2a2c5360e04ea8cebbf6409df-full-13-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-bd0494ba430aff13458b557113b073d226eaf11257dfe26ff3323fa1cfe1335b-delta-39-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-bd0494ba430aff13458b557113b073d226eaf11257dfe26ff3323fa1cfe1335b-full-39-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-cd04f5fbba1553fa728b4dd8131d4723aaac288e0c7dc080447fbf0872c0a6eb-delta-36-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-cd04f5fbba1553fa728b4dd8131d4723aaac288e0c7dc080447fbf0872c0a6eb-full-36-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-cdd2399557fb3163a848f08831fdc833703354edb19a0d32a965fdb140f160c2-delta-18-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-cdd2399557fb3163a848f08831fdc833703354edb19a0d32a965fdb140f160c2-full-18-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-cf7a08fca7b1332095242e4d9800f4b94a3f4eaae88fe8407da42736d54b9e18-delta-37-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-cf7a08fca7b1332095242e4d9800f4b94a3f4eaae88fe8407da42736d54b9e18-full-37-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-d1f97465a9f52187e2ef3a0d811a1258f52380a65340c55f3e8e65b92753bc13-delta-15-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-d1f97465a9f52187e2ef3a0d811a1258f52380a65340c55f3e8e65b92753bc13-full-15-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-e475eccd4ee597e5ff67b1a249e37d65d6e3f754c3f0379fdb43692513588fef-delta-46-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-e475eccd4ee597e5ff67b1a249e37d65d6e3f754c3f0379fdb43692513588fef-full-46-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-e82e63517d78fd65b23a05c3b9a98cf905ddad7026995a238bfe634006b84cd0-delta-27-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-e82e63517d78fd65b23a05c3b9a98cf905ddad7026995a238bfe634006b84cd0-full-27-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-ed2cf0fd6c0f6237c87c161e1fca303b3fbe6c04e01f652b88720b4572143349-delta-12-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-ed2cf0fd6c0f6237c87c161e1fca303b3fbe6c04e01f652b88720b4572143349-full-12-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-f6e454eaf24a83c46a7bed4c19260a0a3ce0ed5c51739cb6d748d4913dc2ef58-delta-30-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-f6e454eaf24a83c46a7bed4c19260a0a3ce0ed5c51739cb6d748d4913dc2ef58-full-30-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-f7ad2bdf86d9609b4d6381086ec1e296bf558e2ff467ead29dd7fa6e31bacc56-delta-43-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e612073746f7265206964-f7ad2bdf86d9609b4d6381086ec1e296bf558e2ff467ead29dd7fa6e31bacc56-full-43-v1.0.dat +0 -0
- chia/_tests/core/data_layer/old_format/files/__init__.py +0 -0
- chia/_tests/core/data_layer/old_format/old_db.sqlite +0 -0
- chia/_tests/core/data_layer/test_data_layer_util.py +18 -21
- chia/_tests/core/data_layer/test_data_rpc.py +77 -28
- chia/_tests/core/data_layer/test_data_store.py +637 -700
- chia/_tests/core/data_layer/test_data_store_schema.py +2 -209
- chia/_tests/core/full_node/ram_db.py +1 -1
- chia/_tests/core/full_node/stores/test_block_store.py +4 -10
- chia/_tests/core/full_node/stores/test_coin_store.py +1 -1
- chia/_tests/core/full_node/test_address_manager.py +3 -3
- chia/_tests/core/full_node/test_block_height_map.py +1 -1
- chia/_tests/core/full_node/test_full_node.py +91 -30
- chia/_tests/core/full_node/test_generator_tools.py +17 -10
- chia/_tests/core/mempool/test_mempool.py +190 -90
- chia/_tests/core/mempool/test_mempool_fee_estimator.py +2 -4
- chia/_tests/core/mempool/test_mempool_item_queries.py +1 -1
- chia/_tests/core/mempool/test_mempool_manager.py +134 -75
- chia/_tests/core/mempool/test_singleton_fast_forward.py +9 -27
- chia/_tests/core/server/serve.py +0 -2
- chia/_tests/core/server/test_rate_limits.py +400 -347
- chia/_tests/core/server/test_server.py +2 -2
- chia/_tests/core/services/test_services.py +7 -7
- chia/_tests/core/test_cost_calculation.py +31 -10
- chia/_tests/core/test_crawler.py +4 -4
- chia/_tests/core/test_db_conversion.py +7 -14
- chia/_tests/core/test_db_validation.py +2 -6
- chia/_tests/core/test_farmer_harvester_rpc.py +34 -1
- chia/_tests/core/test_full_node_rpc.py +28 -24
- chia/_tests/core/test_merkle_set.py +1 -4
- chia/_tests/core/test_seeder.py +1 -1
- chia/_tests/core/util/test_keychain.py +2 -2
- chia/_tests/core/util/test_lru_cache.py +16 -0
- chia/_tests/core/util/test_streamable.py +85 -4
- chia/_tests/environments/wallet.py +4 -1
- chia/_tests/farmer_harvester/test_farmer.py +8 -6
- chia/_tests/farmer_harvester/test_farmer_harvester.py +306 -8
- chia/_tests/farmer_harvester/test_filter_prefix_bits.py +3 -3
- chia/_tests/farmer_harvester/test_third_party_harvesters.py +11 -11
- chia/_tests/fee_estimation/test_fee_estimation_integration.py +2 -2
- chia/_tests/fee_estimation/test_fee_estimation_rpc.py +1 -1
- chia/_tests/fee_estimation/test_fee_estimation_unit_tests.py +1 -2
- chia/_tests/generator/test_rom.py +2 -1
- chia/_tests/harvester/__init__.py +0 -0
- chia/_tests/harvester/config.py +4 -0
- chia/_tests/harvester/test_harvester_api.py +157 -0
- chia/_tests/plot_sync/test_plot_sync.py +6 -3
- chia/_tests/plot_sync/test_receiver.py +16 -4
- chia/_tests/plot_sync/test_sender.py +8 -7
- chia/_tests/plot_sync/test_sync_simulated.py +15 -13
- chia/_tests/plot_sync/util.py +3 -2
- chia/_tests/plotting/test_plot_manager.py +21 -5
- chia/_tests/plotting/test_prover.py +106 -0
- chia/_tests/pools/test_pool_cmdline.py +7 -6
- chia/_tests/pools/test_pool_puzzles_lifecycle.py +10 -3
- chia/_tests/pools/test_pool_rpc.py +92 -64
- chia/_tests/solver/__init__.py +0 -0
- chia/_tests/solver/config.py +4 -0
- chia/_tests/solver/test_solver_service.py +29 -0
- chia/_tests/timelord/test_new_peak.py +1 -1
- chia/_tests/timelord/test_timelord.py +1 -1
- chia/_tests/util/benchmarks.py +5 -12
- chia/_tests/util/blockchain.py +1 -1
- chia/_tests/util/build_network_protocol_files.py +7 -0
- chia/_tests/util/network_protocol_data.py +26 -0
- chia/_tests/util/protocol_messages_bytes-v1.0 +0 -0
- chia/_tests/util/protocol_messages_json.py +19 -0
- chia/_tests/util/setup_nodes.py +21 -2
- chia/_tests/util/spend_sim.py +9 -3
- chia/_tests/util/test_condition_tools.py +3 -2
- chia/_tests/util/test_full_block_utils.py +10 -9
- chia/_tests/util/test_misc.py +10 -10
- chia/_tests/util/test_network.py +32 -1
- chia/_tests/util/test_network_protocol_files.py +333 -318
- chia/_tests/util/test_network_protocol_json.py +6 -0
- chia/_tests/util/test_network_protocol_test.py +27 -0
- chia/_tests/util/test_priority_mutex.py +1 -1
- chia/_tests/util/test_replace_str_to_bytes.py +6 -6
- chia/_tests/wallet/cat_wallet/test_cat_wallet.py +17 -13
- chia/_tests/wallet/cat_wallet/test_trades.py +55 -55
- chia/_tests/wallet/did_wallet/test_did.py +118 -1229
- chia/_tests/wallet/nft_wallet/config.py +1 -1
- chia/_tests/wallet/nft_wallet/test_nft_1_offers.py +73 -96
- chia/_tests/wallet/nft_wallet/test_nft_bulk_mint.py +15 -12
- chia/_tests/wallet/nft_wallet/test_nft_offers.py +67 -134
- chia/_tests/wallet/nft_wallet/test_nft_wallet.py +31 -26
- chia/_tests/wallet/rpc/test_wallet_rpc.py +765 -371
- chia/_tests/wallet/sync/test_wallet_sync.py +6 -0
- chia/_tests/wallet/test_new_wallet_protocol.py +1 -1
- chia/_tests/wallet/test_signer_protocol.py +2 -2
- chia/_tests/wallet/test_singleton_lifecycle_fast.py +3 -4
- chia/_tests/wallet/test_transaction_store.py +42 -33
- chia/_tests/wallet/test_wallet.py +22 -31
- chia/_tests/wallet/test_wallet_state_manager.py +14 -7
- chia/_tests/wallet/vc_wallet/test_vc_wallet.py +53 -32
- chia/apis.py +2 -0
- chia/cmds/beta.py +7 -3
- chia/cmds/chia.py +2 -0
- chia/cmds/cmd_classes.py +11 -27
- chia/cmds/cmds_util.py +3 -0
- chia/cmds/coin_funcs.py +27 -22
- chia/cmds/configure.py +42 -18
- chia/cmds/dev/data.py +22 -3
- chia/cmds/farm.py +32 -0
- chia/cmds/farm_funcs.py +54 -5
- chia/cmds/init_funcs.py +4 -0
- chia/cmds/keys_funcs.py +8 -10
- chia/cmds/peer_funcs.py +8 -10
- chia/cmds/plotnft_funcs.py +24 -16
- chia/cmds/rpc.py +11 -1
- chia/cmds/show_funcs.py +5 -5
- chia/cmds/solver.py +33 -0
- chia/cmds/solver_funcs.py +21 -0
- chia/cmds/wallet.py +1 -1
- chia/cmds/wallet_funcs.py +149 -96
- chia/consensus/block_body_validation.py +8 -9
- chia/consensus/block_creation.py +9 -10
- chia/consensus/block_header_validation.py +61 -69
- chia/{full_node → consensus}/block_height_map.py +2 -1
- chia/consensus/block_height_map_protocol.py +21 -0
- chia/consensus/block_rewards.py +12 -12
- chia/consensus/blockchain.py +8 -18
- chia/consensus/default_constants.py +6 -6
- chia/consensus/generator_tools.py +1 -1
- chia/consensus/get_block_challenge.py +24 -25
- chia/consensus/pos_quality.py +28 -2
- chia/consensus/pot_iterations.py +15 -17
- chia/daemon/keychain_proxy.py +5 -0
- chia/daemon/server.py +2 -3
- chia/data_layer/data_layer.py +32 -24
- chia/data_layer/data_layer_errors.py +5 -0
- chia/data_layer/data_layer_rpc_api.py +1 -1
- chia/data_layer/data_layer_service.py +8 -0
- chia/data_layer/data_layer_util.py +49 -89
- chia/data_layer/data_layer_wallet.py +20 -17
- chia/data_layer/data_store.py +1051 -1462
- chia/data_layer/download_data.py +44 -115
- chia/{server → data_layer}/start_data_layer.py +2 -1
- chia/data_layer/util/benchmark.py +38 -53
- chia/farmer/farmer.py +3 -0
- chia/farmer/farmer_api.py +104 -5
- chia/farmer/farmer_rpc_api.py +20 -0
- chia/farmer/farmer_rpc_client.py +6 -2
- chia/farmer/farmer_service.py +8 -0
- chia/{server → farmer}/start_farmer.py +4 -3
- chia/full_node/block_store.py +20 -10
- chia/full_node/coin_store.py +12 -4
- chia/full_node/eligible_coin_spends.py +17 -72
- chia/full_node/full_node.py +68 -71
- chia/full_node/full_node_api.py +26 -32
- chia/full_node/full_node_rpc_api.py +44 -32
- chia/full_node/full_node_rpc_client.py +67 -79
- chia/full_node/full_node_service.py +8 -0
- chia/full_node/full_node_store.py +5 -3
- chia/full_node/mempool.py +14 -14
- chia/full_node/mempool_manager.py +67 -89
- chia/{server → full_node}/start_full_node.py +1 -1
- chia/full_node/subscriptions.py +2 -2
- chia/full_node/weight_proof.py +14 -15
- chia/harvester/harvester.py +8 -1
- chia/harvester/harvester_api.py +178 -44
- chia/harvester/harvester_service.py +8 -0
- chia/{server → harvester}/start_harvester.py +1 -1
- chia/introducer/introducer_service.py +8 -0
- chia/{server → introducer}/start_introducer.py +1 -1
- chia/plot_sync/receiver.py +6 -1
- chia/plot_sync/sender.py +7 -4
- chia/plotting/cache.py +37 -28
- chia/plotting/check_plots.py +83 -48
- chia/plotting/create_plots.py +3 -4
- chia/plotting/manager.py +18 -13
- chia/plotting/prover.py +153 -0
- chia/plotting/util.py +14 -6
- chia/pools/pool_wallet.py +6 -4
- chia/protocols/harvester_protocol.py +14 -0
- chia/protocols/outbound_message.py +1 -0
- chia/protocols/pool_protocol.py +1 -1
- chia/protocols/protocol_message_types.py +7 -0
- chia/protocols/shared_protocol.py +2 -0
- chia/protocols/solver_protocol.py +18 -0
- chia/rpc/rpc_server.py +1 -1
- chia/seeder/crawl_store.py +4 -8
- chia/seeder/crawler.py +2 -2
- chia/seeder/crawler_service.py +8 -0
- chia/seeder/start_crawler.py +1 -1
- chia/server/address_manager.py +12 -15
- chia/server/introducer_peers.py +1 -1
- chia/server/node_discovery.py +9 -10
- chia/server/rate_limit_numbers.py +157 -168
- chia/server/rate_limits.py +44 -41
- chia/server/resolve_peer_info.py +5 -0
- chia/server/server.py +17 -7
- chia/server/start_service.py +0 -1
- chia/simulator/block_tools.py +92 -58
- chia/simulator/full_node_simulator.py +1 -1
- chia/simulator/setup_services.py +51 -15
- chia/solver/__init__.py +0 -0
- chia/solver/solver.py +100 -0
- chia/solver/solver_api.py +59 -0
- chia/solver/solver_rpc_api.py +31 -0
- chia/solver/solver_rpc_client.py +16 -0
- chia/solver/solver_service.py +8 -0
- chia/solver/start_solver.py +102 -0
- {mozilla-ca → chia/ssl}/cacert.pem +0 -27
- chia/ssl/create_ssl.py +3 -2
- chia/{server → timelord}/start_timelord.py +1 -1
- chia/timelord/timelord.py +12 -13
- chia/timelord/timelord_service.py +8 -0
- chia/types/blockchain_format/proof_of_space.py +61 -17
- chia/types/coin_spend.py +0 -8
- chia/types/internal_mempool_item.py +3 -3
- chia/types/mempool_item.py +15 -8
- chia/types/mempool_submission_status.py +1 -1
- chia/util/config.py +1 -3
- chia/util/db_wrapper.py +7 -8
- chia/util/initial-config.yaml +46 -0
- chia/util/lru_cache.py +8 -4
- chia/util/network.py +9 -0
- chia/util/service_groups.py +3 -1
- chia/util/streamable.py +38 -8
- chia/util/virtual_project_analysis.py +1 -1
- chia/wallet/cat_wallet/cat_outer_puzzle.py +7 -4
- chia/wallet/cat_wallet/cat_wallet.py +13 -7
- chia/wallet/cat_wallet/r_cat_wallet.py +4 -1
- chia/wallet/conditions.py +1 -3
- chia/wallet/did_wallet/did_wallet.py +27 -332
- chia/wallet/nft_wallet/nft_puzzle_utils.py +1 -1
- chia/wallet/nft_wallet/nft_wallet.py +9 -7
- chia/wallet/puzzle_drivers.py +7 -8
- chia/{server → wallet}/start_wallet.py +1 -1
- chia/wallet/trade_manager.py +12 -9
- chia/wallet/transaction_record.py +14 -51
- chia/wallet/util/clvm_streamable.py +28 -41
- chia/wallet/util/merkle_utils.py +2 -2
- chia/wallet/util/tx_config.py +3 -6
- chia/wallet/vc_wallet/cr_cat_wallet.py +12 -6
- chia/wallet/vc_wallet/vc_wallet.py +13 -15
- chia/wallet/wallet.py +5 -3
- chia/wallet/wallet_node.py +25 -30
- chia/wallet/wallet_request_types.py +538 -101
- chia/wallet/wallet_rpc_api.py +398 -570
- chia/wallet/wallet_rpc_client.py +144 -332
- chia/wallet/wallet_service.py +8 -0
- chia/wallet/wallet_state_manager.py +53 -42
- chia/wallet/wallet_transaction_store.py +13 -5
- {chia_blockchain-2.5.6rc2.dist-info → chia_blockchain-2.5.7rc2.dist-info}/METADATA +31 -31
- {chia_blockchain-2.5.6rc2.dist-info → chia_blockchain-2.5.7rc2.dist-info}/RECORD +369 -241
- {chia_blockchain-2.5.6rc2.dist-info → chia_blockchain-2.5.7rc2.dist-info}/WHEEL +1 -1
- {chia_blockchain-2.5.6rc2.dist-info → chia_blockchain-2.5.7rc2.dist-info}/entry_points.txt +8 -7
- chia/full_node/mempool_check_conditions.py +0 -102
- chia/server/aliases.py +0 -35
- {chia_blockchain-2.5.6rc2.dist-info → chia_blockchain-2.5.7rc2.dist-info/licenses}/LICENSE +0 -0
|
@@ -1,18 +1,23 @@
|
|
|
1
1
|
from __future__ import annotations
|
|
2
2
|
|
|
3
3
|
from pathlib import Path
|
|
4
|
-
from typing import Optional, cast
|
|
5
4
|
|
|
6
5
|
from chia_rs.sized_bytes import bytes32
|
|
7
6
|
from chia_rs.sized_ints import uint32, uint64
|
|
8
7
|
|
|
9
8
|
from chia._tests.cmds.cmd_test_utils import TestRpcClients, TestWalletRpcClient, logType, run_cli_command_and_assert
|
|
10
|
-
from chia._tests.cmds.wallet.test_consts import FINGERPRINT, FINGERPRINT_ARG, get_bytes32
|
|
9
|
+
from chia._tests.cmds.wallet.test_consts import FINGERPRINT, FINGERPRINT_ARG, STD_TX, STD_UTX, get_bytes32
|
|
11
10
|
from chia.util.bech32m import encode_puzzle_hash
|
|
12
|
-
from chia.wallet.conditions import ConditionValidTimes
|
|
11
|
+
from chia.wallet.conditions import Condition, ConditionValidTimes
|
|
13
12
|
from chia.wallet.notification_store import Notification
|
|
14
|
-
from chia.wallet.
|
|
15
|
-
from chia.wallet.wallet_request_types import
|
|
13
|
+
from chia.wallet.util.tx_config import TXConfig
|
|
14
|
+
from chia.wallet.wallet_request_types import (
|
|
15
|
+
DeleteNotifications,
|
|
16
|
+
GetNotifications,
|
|
17
|
+
GetNotificationsResponse,
|
|
18
|
+
SendNotification,
|
|
19
|
+
SendNotificationResponse,
|
|
20
|
+
)
|
|
16
21
|
|
|
17
22
|
test_condition_valid_times: ConditionValidTimes = ConditionValidTimes(min_time=uint64(100), max_time=uint64(150))
|
|
18
23
|
|
|
@@ -26,20 +31,17 @@ def test_notifications_send(capsys: object, get_test_cli_clients: tuple[TestRpcC
|
|
|
26
31
|
class NotificationsSendRpcClient(TestWalletRpcClient):
|
|
27
32
|
async def send_notification(
|
|
28
33
|
self,
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
fee: uint64 = uint64(0),
|
|
33
|
-
push: bool = True,
|
|
34
|
+
request: SendNotification,
|
|
35
|
+
tx_config: TXConfig,
|
|
36
|
+
extra_conditions: tuple[Condition, ...] = tuple(),
|
|
34
37
|
timelock_info: ConditionValidTimes = ConditionValidTimes(),
|
|
35
|
-
) ->
|
|
36
|
-
self.add_to_log(
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
self.name = name
|
|
38
|
+
) -> SendNotificationResponse:
|
|
39
|
+
self.add_to_log(
|
|
40
|
+
"send_notification",
|
|
41
|
+
(request.target, request.message, request.amount, request.fee, request.push, timelock_info),
|
|
42
|
+
)
|
|
41
43
|
|
|
42
|
-
return
|
|
44
|
+
return SendNotificationResponse([STD_UTX], [STD_TX], tx=STD_TX)
|
|
43
45
|
|
|
44
46
|
inst_rpc_client = NotificationsSendRpcClient()
|
|
45
47
|
test_rpc_clients.wallet_rpc_client = inst_rpc_client
|
|
@@ -111,15 +113,31 @@ def test_notifications_delete(capsys: object, get_test_cli_clients: tuple[TestRp
|
|
|
111
113
|
|
|
112
114
|
# set RPC Client
|
|
113
115
|
class NotificationsDeleteRpcClient(TestWalletRpcClient):
|
|
114
|
-
async def delete_notifications(self,
|
|
115
|
-
self.add_to_log("delete_notifications", (ids,))
|
|
116
|
-
return True
|
|
116
|
+
async def delete_notifications(self, request: DeleteNotifications) -> None:
|
|
117
|
+
self.add_to_log("delete_notifications", (request.ids,))
|
|
117
118
|
|
|
118
119
|
inst_rpc_client = NotificationsDeleteRpcClient()
|
|
119
120
|
test_rpc_clients.wallet_rpc_client = inst_rpc_client
|
|
121
|
+
# Try all first
|
|
120
122
|
command_args = ["wallet", "notifications", "delete", FINGERPRINT_ARG, "--all"]
|
|
121
123
|
# these are various things that should be in the output
|
|
122
|
-
assert_list = ["Success
|
|
124
|
+
assert_list = ["Success!"]
|
|
123
125
|
run_cli_command_and_assert(capsys, root_dir, command_args, assert_list)
|
|
124
126
|
expected_calls: logType = {"delete_notifications": [(None,)]}
|
|
125
127
|
test_rpc_clients.wallet_rpc_client.check_log(expected_calls)
|
|
128
|
+
# Next try specifying IDs
|
|
129
|
+
command_args = [
|
|
130
|
+
"wallet",
|
|
131
|
+
"notifications",
|
|
132
|
+
"delete",
|
|
133
|
+
FINGERPRINT_ARG,
|
|
134
|
+
"--id",
|
|
135
|
+
bytes32.zeros.hex(),
|
|
136
|
+
"--id",
|
|
137
|
+
bytes32.zeros.hex(),
|
|
138
|
+
]
|
|
139
|
+
# these are various things that should be in the output
|
|
140
|
+
assert_list = ["Success!"]
|
|
141
|
+
run_cli_command_and_assert(capsys, root_dir, command_args, assert_list)
|
|
142
|
+
expected_calls = {"delete_notifications": [([bytes32.zeros, bytes32.zeros],)]}
|
|
143
|
+
test_rpc_clients.wallet_rpc_client.check_log(expected_calls)
|
|
@@ -16,6 +16,7 @@ from chia.wallet.util.tx_config import DEFAULT_TX_CONFIG, TXConfig
|
|
|
16
16
|
from chia.wallet.vc_wallet.vc_drivers import VCLineageProof, VerifiedCredential
|
|
17
17
|
from chia.wallet.vc_wallet.vc_store import VCRecord
|
|
18
18
|
from chia.wallet.wallet_request_types import (
|
|
19
|
+
GetWallets,
|
|
19
20
|
VCAddProofs,
|
|
20
21
|
VCGet,
|
|
21
22
|
VCGetList,
|
|
@@ -395,6 +396,6 @@ def test_vcs_approve_r_cats(capsys: object, get_test_cli_clients: tuple[TestRpcC
|
|
|
395
396
|
test_condition_valid_times,
|
|
396
397
|
)
|
|
397
398
|
],
|
|
398
|
-
"get_wallets": [(None,)],
|
|
399
|
+
"get_wallets": [(GetWallets(type=None, include_data=True),)],
|
|
399
400
|
}
|
|
400
401
|
test_rpc_clients.wallet_rpc_client.check_log(expected_calls)
|
|
@@ -9,7 +9,7 @@ import importlib_resources
|
|
|
9
9
|
import pytest
|
|
10
10
|
from chia_rs import Coin, G2Element
|
|
11
11
|
from chia_rs.sized_bytes import bytes32
|
|
12
|
-
from chia_rs.sized_ints import uint8, uint16, uint32, uint64
|
|
12
|
+
from chia_rs.sized_ints import uint8, uint16, uint32, uint64, uint128
|
|
13
13
|
from click.testing import CliRunner
|
|
14
14
|
|
|
15
15
|
from chia._tests.cmds.cmd_test_utils import TestRpcClients, TestWalletRpcClient, logType, run_cli_command_and_assert
|
|
@@ -26,32 +26,56 @@ from chia._tests.cmds.wallet.test_consts import (
|
|
|
26
26
|
)
|
|
27
27
|
from chia.cmds.cmds_util import TransactionBundle
|
|
28
28
|
from chia.protocols.outbound_message import NodeType
|
|
29
|
-
from chia.types.blockchain_format.program import Program
|
|
30
29
|
from chia.types.signing_mode import SigningMode
|
|
31
30
|
from chia.util.bech32m import encode_puzzle_hash
|
|
32
|
-
from chia.wallet.conditions import ConditionValidTimes
|
|
31
|
+
from chia.wallet.conditions import Condition, ConditionValidTimes
|
|
33
32
|
from chia.wallet.trade_record import TradeRecord
|
|
34
33
|
from chia.wallet.trading.offer import Offer
|
|
35
34
|
from chia.wallet.trading.trade_status import TradeStatus
|
|
36
35
|
from chia.wallet.transaction_record import TransactionRecord
|
|
37
36
|
from chia.wallet.transaction_sorting import SortKey
|
|
38
|
-
from chia.wallet.util.query_filter import HashFilter
|
|
37
|
+
from chia.wallet.util.query_filter import HashFilter
|
|
39
38
|
from chia.wallet.util.transaction_type import TransactionType
|
|
40
39
|
from chia.wallet.util.tx_config import DEFAULT_TX_CONFIG, TXConfig
|
|
41
40
|
from chia.wallet.util.wallet_types import WalletType
|
|
42
41
|
from chia.wallet.wallet_coin_store import GetCoinRecords
|
|
43
42
|
from chia.wallet.wallet_request_types import (
|
|
43
|
+
BalanceResponse,
|
|
44
44
|
CancelOfferResponse,
|
|
45
|
+
CATAssetIDToName,
|
|
46
|
+
CATAssetIDToNameResponse,
|
|
47
|
+
CATSetName,
|
|
48
|
+
CATSetNameResponse,
|
|
49
|
+
CATSpend,
|
|
45
50
|
CATSpendResponse,
|
|
51
|
+
ClawbackPuzzleDecoratorOverride,
|
|
46
52
|
CreateOfferForIDsResponse,
|
|
53
|
+
DeleteUnconfirmedTransactions,
|
|
54
|
+
ExtendDerivationIndex,
|
|
55
|
+
ExtendDerivationIndexResponse,
|
|
47
56
|
FungibleAsset,
|
|
57
|
+
GetCurrentDerivationIndexResponse,
|
|
48
58
|
GetHeightInfoResponse,
|
|
59
|
+
GetNextAddress,
|
|
60
|
+
GetNextAddressResponse,
|
|
61
|
+
GetTransaction,
|
|
62
|
+
GetTransactions,
|
|
63
|
+
GetTransactionsResponse,
|
|
64
|
+
GetWalletBalance,
|
|
65
|
+
GetWalletBalanceResponse,
|
|
66
|
+
GetWallets,
|
|
67
|
+
GetWalletsResponse,
|
|
49
68
|
NFTCalculateRoyalties,
|
|
50
69
|
NFTGetWalletDID,
|
|
51
70
|
NFTGetWalletDIDResponse,
|
|
52
71
|
RoyaltyAsset,
|
|
72
|
+
SendTransaction,
|
|
53
73
|
SendTransactionResponse,
|
|
74
|
+
SpendClawbackCoins,
|
|
75
|
+
SpendClawbackCoinsResponse,
|
|
54
76
|
TakeOfferResponse,
|
|
77
|
+
TransactionRecordWithMetadata,
|
|
78
|
+
WalletInfoResponse,
|
|
55
79
|
)
|
|
56
80
|
from chia.wallet.wallet_spend_bundle import WalletSpendBundle
|
|
57
81
|
|
|
@@ -91,12 +115,12 @@ def test_get_transaction(capsys: object, get_test_cli_clients: tuple[TestRpcClie
|
|
|
91
115
|
run_cli_command_and_assert(capsys, root_dir, [*command_args, CAT_FINGERPRINT_ARG], cat_assert_list)
|
|
92
116
|
# these are various things that should be in the output
|
|
93
117
|
expected_calls: logType = {
|
|
94
|
-
"get_wallets": [(None,
|
|
118
|
+
"get_wallets": [(GetWallets(type=None, include_data=True),)] * 3,
|
|
95
119
|
"get_cat_name": [(1,)],
|
|
96
120
|
"get_transaction": [
|
|
97
|
-
(bytes32.from_hexstr(bytes32_hexstr),),
|
|
98
|
-
(bytes32.from_hexstr(bytes32_hexstr),),
|
|
99
|
-
(bytes32.from_hexstr(bytes32_hexstr),),
|
|
121
|
+
(GetTransaction(bytes32.from_hexstr(bytes32_hexstr)),),
|
|
122
|
+
(GetTransaction(bytes32.from_hexstr(bytes32_hexstr)),),
|
|
123
|
+
(GetTransaction(bytes32.from_hexstr(bytes32_hexstr)),),
|
|
100
124
|
],
|
|
101
125
|
}
|
|
102
126
|
test_rpc_clients.wallet_rpc_client.check_log(expected_calls)
|
|
@@ -107,27 +131,17 @@ def test_get_transactions(capsys: object, get_test_cli_clients: tuple[TestRpcCli
|
|
|
107
131
|
|
|
108
132
|
# set RPC Client
|
|
109
133
|
class GetTransactionsWalletRpcClient(TestWalletRpcClient):
|
|
110
|
-
async def get_transactions(
|
|
111
|
-
self,
|
|
112
|
-
wallet_id: int,
|
|
113
|
-
start: int,
|
|
114
|
-
end: int,
|
|
115
|
-
sort_key: Optional[SortKey] = None,
|
|
116
|
-
reverse: bool = False,
|
|
117
|
-
to_address: Optional[str] = None,
|
|
118
|
-
type_filter: Optional[TransactionTypeFilter] = None,
|
|
119
|
-
confirmed: Optional[bool] = None,
|
|
120
|
-
) -> list[TransactionRecord]:
|
|
121
|
-
self.add_to_log(
|
|
122
|
-
"get_transactions", (wallet_id, start, end, sort_key, reverse, to_address, type_filter, confirmed)
|
|
123
|
-
)
|
|
134
|
+
async def get_transactions(self, request: GetTransactions) -> GetTransactionsResponse:
|
|
135
|
+
self.add_to_log("get_transactions", (request,))
|
|
124
136
|
l_tx_rec = []
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
137
|
+
assert request.start is not None and request.end is not None
|
|
138
|
+
for i in range(request.start, request.end):
|
|
139
|
+
t_type = TransactionType.INCOMING_CLAWBACK_SEND if i == request.end - 1 else TransactionType.INCOMING_TX
|
|
140
|
+
tx_rec = TransactionRecordWithMetadata(
|
|
128
141
|
confirmed_at_height=uint32(1 + i),
|
|
129
142
|
created_at_time=uint64(1234 + i),
|
|
130
143
|
to_puzzle_hash=bytes32([1 + i] * 32),
|
|
144
|
+
to_address=encode_puzzle_hash(bytes32([1 + i] * 32), "xch"),
|
|
131
145
|
amount=uint64(12345678 + i),
|
|
132
146
|
fee_amount=uint64(1234567 + i),
|
|
133
147
|
confirmed=False,
|
|
@@ -140,12 +154,12 @@ def test_get_transactions(capsys: object, get_test_cli_clients: tuple[TestRpcCli
|
|
|
140
154
|
trade_id=None,
|
|
141
155
|
type=uint32(t_type.value),
|
|
142
156
|
name=bytes32([2 + i] * 32),
|
|
143
|
-
memos=
|
|
157
|
+
memos={bytes32([3 + i] * 32): [bytes([4 + i] * 32)]},
|
|
144
158
|
valid_times=ConditionValidTimes(),
|
|
145
159
|
)
|
|
146
160
|
l_tx_rec.append(tx_rec)
|
|
147
161
|
|
|
148
|
-
return l_tx_rec
|
|
162
|
+
return GetTransactionsResponse(l_tx_rec, request.wallet_id)
|
|
149
163
|
|
|
150
164
|
async def get_coin_records(self, request: GetCoinRecords) -> dict[str, Any]:
|
|
151
165
|
self.add_to_log("get_coin_records", (request,))
|
|
@@ -192,10 +206,10 @@ def test_get_transactions(capsys: object, get_test_cli_clients: tuple[TestRpcCli
|
|
|
192
206
|
# these are various things that should be in the output
|
|
193
207
|
expected_coin_id = Coin(get_bytes32(4), get_bytes32(5), uint64(12345678)).name()
|
|
194
208
|
expected_calls: logType = {
|
|
195
|
-
"get_wallets": [(None,),
|
|
209
|
+
"get_wallets": [(GetWallets(type=None, include_data=True),)] * 2,
|
|
196
210
|
"get_transactions": [
|
|
197
|
-
(1, 2, 4, SortKey.RELEVANCE, True, None, None, None),
|
|
198
|
-
(1, 2, 4, SortKey.RELEVANCE, True, None, None, None),
|
|
211
|
+
(GetTransactions(uint32(1), uint16(2), uint16(4), SortKey.RELEVANCE.name, True, None, None, None),),
|
|
212
|
+
(GetTransactions(uint32(1), uint16(2), uint16(4), SortKey.RELEVANCE.name, True, None, None, None),),
|
|
199
213
|
],
|
|
200
214
|
"get_coin_records": [
|
|
201
215
|
(GetCoinRecords(coin_id_filter=HashFilter.include([expected_coin_id])),),
|
|
@@ -210,46 +224,52 @@ def test_show(capsys: object, get_test_cli_clients: tuple[TestRpcClients, Path])
|
|
|
210
224
|
|
|
211
225
|
# set RPC Client
|
|
212
226
|
class ShowRpcClient(TestWalletRpcClient):
|
|
213
|
-
async def get_wallets(self,
|
|
214
|
-
self.add_to_log("get_wallets", (
|
|
215
|
-
wallet_list: list[
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
227
|
+
async def get_wallets(self, request: GetWallets) -> GetWalletsResponse:
|
|
228
|
+
self.add_to_log("get_wallets", (request,))
|
|
229
|
+
wallet_list: list[WalletInfoResponse] = [
|
|
230
|
+
WalletInfoResponse(
|
|
231
|
+
data="", id=uint32(1), name="Chia Wallet", type=uint8(WalletType.STANDARD_WALLET.value)
|
|
232
|
+
),
|
|
233
|
+
WalletInfoResponse(
|
|
234
|
+
data="dc59bcd60ce5fc9c93a5d3b11875486b03efb53a53da61e453f5cf61a774686001ff02ffff01ff02ffff03ff2f"
|
|
219
235
|
"ffff01ff0880ffff01ff02ffff03ffff09ff2dff0280ff80ffff01ff088080ff018080ff0180ffff04ffff01a09848f0ef"
|
|
220
236
|
"6587565c48ee225cc837abbe406b91946c938e1739da49fc26c04286ff018080",
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
237
|
+
id=uint32(2),
|
|
238
|
+
name="test2",
|
|
239
|
+
type=uint8(WalletType.CAT.value),
|
|
240
|
+
),
|
|
241
|
+
WalletInfoResponse(
|
|
242
|
+
data='{"did_id": "0xcee228b8638c67cb66a55085be99fa3b457ae5b56915896f581990f600b2c652"}',
|
|
243
|
+
id=uint32(3),
|
|
244
|
+
name="NFT Wallet",
|
|
245
|
+
type=uint8(WalletType.NFT.value),
|
|
246
|
+
),
|
|
231
247
|
]
|
|
232
|
-
if
|
|
233
|
-
return [wallet_list[1]]
|
|
234
|
-
return wallet_list
|
|
248
|
+
if request.type is not None and WalletType(request.type) is WalletType.CAT:
|
|
249
|
+
return GetWalletsResponse([wallet_list[1]])
|
|
250
|
+
return GetWalletsResponse(wallet_list)
|
|
235
251
|
|
|
236
252
|
async def get_height_info(self) -> GetHeightInfoResponse:
|
|
237
253
|
self.add_to_log("get_height_info", ())
|
|
238
254
|
return GetHeightInfoResponse(uint32(10))
|
|
239
255
|
|
|
240
|
-
async def get_wallet_balance(self,
|
|
241
|
-
self.add_to_log("get_wallet_balance", (
|
|
242
|
-
if wallet_id == 1:
|
|
243
|
-
amount =
|
|
244
|
-
elif wallet_id == 2:
|
|
245
|
-
amount =
|
|
256
|
+
async def get_wallet_balance(self, request: GetWalletBalance) -> GetWalletBalanceResponse:
|
|
257
|
+
self.add_to_log("get_wallet_balance", (request,))
|
|
258
|
+
if request.wallet_id == 1:
|
|
259
|
+
amount = uint128(1000000000)
|
|
260
|
+
elif request.wallet_id == 2:
|
|
261
|
+
amount = uint128(2000000000)
|
|
246
262
|
else:
|
|
247
|
-
amount =
|
|
248
|
-
return
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
263
|
+
amount = uint128(1)
|
|
264
|
+
return GetWalletBalanceResponse(
|
|
265
|
+
BalanceResponse(
|
|
266
|
+
wallet_id=request.wallet_id,
|
|
267
|
+
wallet_type=uint8(0), # Doesn't matter
|
|
268
|
+
confirmed_wallet_balance=amount,
|
|
269
|
+
spendable_balance=amount,
|
|
270
|
+
unconfirmed_wallet_balance=uint128(0),
|
|
271
|
+
)
|
|
272
|
+
)
|
|
253
273
|
|
|
254
274
|
async def get_nft_wallet_did(self, request: NFTGetWalletDID) -> NFTGetWalletDIDResponse:
|
|
255
275
|
self.add_to_log("get_nft_wallet_did", (request.wallet_id,))
|
|
@@ -296,10 +316,18 @@ def test_show(capsys: object, get_test_cli_clients: tuple[TestRpcClients, Path])
|
|
|
296
316
|
run_cli_command_and_assert(capsys, root_dir, [*command_args, "--wallet_type", "cat"], other_assert_list)
|
|
297
317
|
# these are various things that should be in the output
|
|
298
318
|
expected_calls: logType = {
|
|
299
|
-
"get_wallets": [
|
|
319
|
+
"get_wallets": [
|
|
320
|
+
(GetWallets(type=None, include_data=True),),
|
|
321
|
+
(GetWallets(type=uint16(WalletType.CAT.value), include_data=True),),
|
|
322
|
+
],
|
|
300
323
|
"get_sync_status": [(), ()],
|
|
301
324
|
"get_height_info": [(), ()],
|
|
302
|
-
"get_wallet_balance": [
|
|
325
|
+
"get_wallet_balance": [
|
|
326
|
+
(GetWalletBalance(wallet_id=uint32(1)),),
|
|
327
|
+
(GetWalletBalance(wallet_id=uint32(2)),),
|
|
328
|
+
(GetWalletBalance(wallet_id=uint32(3)),),
|
|
329
|
+
(GetWalletBalance(wallet_id=uint32(2)),),
|
|
330
|
+
],
|
|
303
331
|
"get_nft_wallet_did": [(3,)],
|
|
304
332
|
"get_connections": [(None,), (None,)],
|
|
305
333
|
}
|
|
@@ -313,25 +341,31 @@ def test_send(capsys: object, get_test_cli_clients: tuple[TestRpcClients, Path])
|
|
|
313
341
|
class SendWalletRpcClient(TestWalletRpcClient):
|
|
314
342
|
async def send_transaction(
|
|
315
343
|
self,
|
|
316
|
-
|
|
317
|
-
amount: uint64,
|
|
318
|
-
address: str,
|
|
344
|
+
request: SendTransaction,
|
|
319
345
|
tx_config: TXConfig,
|
|
320
|
-
|
|
321
|
-
memos: Optional[list[str]] = None,
|
|
322
|
-
puzzle_decorator_override: Optional[list[dict[str, Union[str, int, bool]]]] = None,
|
|
323
|
-
push: bool = True,
|
|
346
|
+
extra_conditions: tuple[Condition, ...] = tuple(),
|
|
324
347
|
timelock_info: ConditionValidTimes = ConditionValidTimes(),
|
|
325
348
|
) -> SendTransactionResponse:
|
|
326
349
|
self.add_to_log(
|
|
327
350
|
"send_transaction",
|
|
328
|
-
(
|
|
351
|
+
(
|
|
352
|
+
request.wallet_id,
|
|
353
|
+
request.amount,
|
|
354
|
+
request.address,
|
|
355
|
+
tx_config,
|
|
356
|
+
request.fee,
|
|
357
|
+
request.memos,
|
|
358
|
+
request.puzzle_decorator,
|
|
359
|
+
request.push,
|
|
360
|
+
timelock_info,
|
|
361
|
+
),
|
|
329
362
|
)
|
|
330
363
|
name = get_bytes32(2)
|
|
331
364
|
tx_rec = TransactionRecord(
|
|
332
365
|
confirmed_at_height=uint32(1),
|
|
333
366
|
created_at_time=uint64(1234),
|
|
334
367
|
to_puzzle_hash=get_bytes32(1),
|
|
368
|
+
to_address=encode_puzzle_hash(get_bytes32(1), "xch"),
|
|
335
369
|
amount=uint64(12345678),
|
|
336
370
|
fee_amount=uint64(1234567),
|
|
337
371
|
confirmed=False,
|
|
@@ -344,38 +378,31 @@ def test_send(capsys: object, get_test_cli_clients: tuple[TestRpcClients, Path])
|
|
|
344
378
|
trade_id=None,
|
|
345
379
|
type=uint32(TransactionType.OUTGOING_CLAWBACK.value),
|
|
346
380
|
name=name,
|
|
347
|
-
memos=
|
|
381
|
+
memos={get_bytes32(3): [bytes([4] * 32)]},
|
|
348
382
|
valid_times=ConditionValidTimes(),
|
|
349
383
|
)
|
|
350
384
|
return SendTransactionResponse([STD_UTX], [STD_TX], tx_rec, name)
|
|
351
385
|
|
|
352
386
|
async def cat_spend(
|
|
353
387
|
self,
|
|
354
|
-
|
|
388
|
+
request: CATSpend,
|
|
355
389
|
tx_config: TXConfig,
|
|
356
|
-
|
|
357
|
-
inner_address: Optional[str] = None,
|
|
358
|
-
fee: uint64 = uint64(0),
|
|
359
|
-
memos: Optional[list[str]] = None,
|
|
360
|
-
additions: Optional[list[dict[str, Any]]] = None,
|
|
361
|
-
removals: Optional[list[Coin]] = None,
|
|
362
|
-
cat_discrepancy: Optional[tuple[int, Program, Program]] = None, # (extra_delta, tail_reveal, tail_solution)
|
|
363
|
-
push: bool = True,
|
|
390
|
+
extra_conditions: tuple[Condition, ...] = tuple(),
|
|
364
391
|
timelock_info: ConditionValidTimes = ConditionValidTimes(),
|
|
365
392
|
) -> CATSpendResponse:
|
|
366
393
|
self.add_to_log(
|
|
367
394
|
"cat_spend",
|
|
368
395
|
(
|
|
369
|
-
wallet_id,
|
|
396
|
+
request.wallet_id,
|
|
370
397
|
tx_config,
|
|
371
|
-
amount,
|
|
372
|
-
inner_address,
|
|
373
|
-
fee,
|
|
374
|
-
memos,
|
|
375
|
-
additions,
|
|
376
|
-
|
|
377
|
-
cat_discrepancy,
|
|
378
|
-
push,
|
|
398
|
+
request.amount,
|
|
399
|
+
request.inner_address,
|
|
400
|
+
request.fee,
|
|
401
|
+
request.memos,
|
|
402
|
+
request.additions,
|
|
403
|
+
request.coins,
|
|
404
|
+
request.cat_discrepancy,
|
|
405
|
+
request.push,
|
|
379
406
|
timelock_info,
|
|
380
407
|
),
|
|
381
408
|
)
|
|
@@ -427,7 +454,7 @@ def test_send(capsys: object, get_test_cli_clients: tuple[TestRpcClients, Path])
|
|
|
427
454
|
|
|
428
455
|
# these are various things that should be in the output
|
|
429
456
|
expected_calls: logType = {
|
|
430
|
-
"get_wallets": [(None,),
|
|
457
|
+
"get_wallets": [(GetWallets(type=None, include_data=True),)] * 2,
|
|
431
458
|
"send_transaction": [
|
|
432
459
|
(
|
|
433
460
|
1,
|
|
@@ -442,7 +469,7 @@ def test_send(capsys: object, get_test_cli_clients: tuple[TestRpcClients, Path])
|
|
|
442
469
|
),
|
|
443
470
|
500000000000,
|
|
444
471
|
["0x6262626262626262626262626262626262626262626262626262626262626262"],
|
|
445
|
-
[
|
|
472
|
+
[ClawbackPuzzleDecoratorOverride(decorator="CLAWBACK", clawback_timelock=uint64(60))],
|
|
446
473
|
True,
|
|
447
474
|
test_condition_valid_times,
|
|
448
475
|
)
|
|
@@ -468,7 +495,7 @@ def test_send(capsys: object, get_test_cli_clients: tuple[TestRpcClients, Path])
|
|
|
468
495
|
test_condition_valid_times,
|
|
469
496
|
)
|
|
470
497
|
],
|
|
471
|
-
"get_transaction": [(get_bytes32(2),), (get_bytes32(2),)],
|
|
498
|
+
"get_transaction": [(GetTransaction(get_bytes32(2)),), (GetTransaction(get_bytes32(2)),)],
|
|
472
499
|
}
|
|
473
500
|
test_rpc_clients.wallet_rpc_client.check_log(expected_calls)
|
|
474
501
|
|
|
@@ -478,11 +505,11 @@ def test_get_address(capsys: object, get_test_cli_clients: tuple[TestRpcClients,
|
|
|
478
505
|
|
|
479
506
|
# set RPC Client
|
|
480
507
|
class GetAddressWalletRpcClient(TestWalletRpcClient):
|
|
481
|
-
async def get_next_address(self,
|
|
482
|
-
self.add_to_log("get_next_address", (wallet_id, new_address))
|
|
483
|
-
if new_address:
|
|
484
|
-
return encode_puzzle_hash(get_bytes32(3), "xch")
|
|
485
|
-
return encode_puzzle_hash(get_bytes32(4), "xch")
|
|
508
|
+
async def get_next_address(self, request: GetNextAddress) -> GetNextAddressResponse:
|
|
509
|
+
self.add_to_log("get_next_address", (request.wallet_id, request.new_address))
|
|
510
|
+
if request.new_address:
|
|
511
|
+
return GetNextAddressResponse(request.wallet_id, encode_puzzle_hash(get_bytes32(3), "xch"))
|
|
512
|
+
return GetNextAddressResponse(request.wallet_id, encode_puzzle_hash(get_bytes32(4), "xch"))
|
|
486
513
|
|
|
487
514
|
inst_rpc_client = GetAddressWalletRpcClient()
|
|
488
515
|
test_rpc_clients.wallet_rpc_client = inst_rpc_client
|
|
@@ -511,30 +538,25 @@ def test_clawback(capsys: object, get_test_cli_clients: tuple[TestRpcClients, Pa
|
|
|
511
538
|
class ClawbackWalletRpcClient(TestWalletRpcClient):
|
|
512
539
|
async def spend_clawback_coins(
|
|
513
540
|
self,
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
push: bool = True,
|
|
541
|
+
request: SpendClawbackCoins,
|
|
542
|
+
tx_config: TXConfig,
|
|
543
|
+
extra_conditions: tuple[Condition, ...] = tuple(),
|
|
518
544
|
timelock_info: ConditionValidTimes = ConditionValidTimes(),
|
|
519
|
-
) ->
|
|
520
|
-
self.add_to_log(
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
}
|
|
530
|
-
)
|
|
531
|
-
],
|
|
532
|
-
}
|
|
545
|
+
) -> SpendClawbackCoinsResponse:
|
|
546
|
+
self.add_to_log(
|
|
547
|
+
"spend_clawback_coins", (request.coin_ids, request.fee, request.force, request.push, timelock_info)
|
|
548
|
+
)
|
|
549
|
+
tx_list = [get_bytes32(6), get_bytes32(7), get_bytes32(8)]
|
|
550
|
+
return SpendClawbackCoinsResponse(
|
|
551
|
+
transaction_ids=tx_list,
|
|
552
|
+
transactions=[STD_TX],
|
|
553
|
+
unsigned_transactions=[STD_UTX],
|
|
554
|
+
)
|
|
533
555
|
|
|
534
556
|
inst_rpc_client = ClawbackWalletRpcClient()
|
|
535
557
|
test_rpc_clients.wallet_rpc_client = inst_rpc_client
|
|
536
558
|
tx_ids = [get_bytes32(3), get_bytes32(4), get_bytes32(5)]
|
|
537
|
-
r_tx_ids_hex = [get_bytes32(6).hex(), get_bytes32(7).hex(), get_bytes32(8).hex()]
|
|
559
|
+
r_tx_ids_hex = ["0x" + get_bytes32(6).hex(), "0x" + get_bytes32(7).hex(), "0x" + get_bytes32(8).hex()]
|
|
538
560
|
command_args = [
|
|
539
561
|
"wallet",
|
|
540
562
|
"clawback",
|
|
@@ -548,7 +570,7 @@ def test_clawback(capsys: object, get_test_cli_clients: tuple[TestRpcClients, Pa
|
|
|
548
570
|
"--expires-at",
|
|
549
571
|
"150",
|
|
550
572
|
]
|
|
551
|
-
run_cli_command_and_assert(capsys, root_dir, command_args, ["transaction_ids",
|
|
573
|
+
run_cli_command_and_assert(capsys, root_dir, command_args, ["transaction_ids", *r_tx_ids_hex])
|
|
552
574
|
# these are various things that should be in the output
|
|
553
575
|
expected_calls: logType = {
|
|
554
576
|
"spend_clawback_coins": [(tx_ids, 500000000000, False, True, test_condition_valid_times)],
|
|
@@ -561,8 +583,8 @@ def test_del_unconfirmed_tx(capsys: object, get_test_cli_clients: tuple[TestRpcC
|
|
|
561
583
|
|
|
562
584
|
# set RPC Client
|
|
563
585
|
class UnconfirmedTxRpcClient(TestWalletRpcClient):
|
|
564
|
-
async def delete_unconfirmed_transactions(self,
|
|
565
|
-
self.add_to_log("delete_unconfirmed_transactions", (wallet_id,))
|
|
586
|
+
async def delete_unconfirmed_transactions(self, request: DeleteUnconfirmedTransactions) -> None:
|
|
587
|
+
self.add_to_log("delete_unconfirmed_transactions", (request.wallet_id,))
|
|
566
588
|
|
|
567
589
|
inst_rpc_client = UnconfirmedTxRpcClient()
|
|
568
590
|
test_rpc_clients.wallet_rpc_client = inst_rpc_client
|
|
@@ -586,9 +608,9 @@ def test_get_derivation_index(capsys: object, get_test_cli_clients: tuple[TestRp
|
|
|
586
608
|
|
|
587
609
|
# set RPC Client
|
|
588
610
|
class GetDerivationIndexRpcClient(TestWalletRpcClient):
|
|
589
|
-
async def get_current_derivation_index(self) ->
|
|
611
|
+
async def get_current_derivation_index(self) -> GetCurrentDerivationIndexResponse:
|
|
590
612
|
self.add_to_log("get_current_derivation_index", ())
|
|
591
|
-
return
|
|
613
|
+
return GetCurrentDerivationIndexResponse(uint32(520))
|
|
592
614
|
|
|
593
615
|
inst_rpc_client = GetDerivationIndexRpcClient()
|
|
594
616
|
test_rpc_clients.wallet_rpc_client = inst_rpc_client
|
|
@@ -617,8 +639,9 @@ def test_sign_message(capsys: object, get_test_cli_clients: tuple[TestRpcClients
|
|
|
617
639
|
# these are various things that should be in the output
|
|
618
640
|
assert_list = [
|
|
619
641
|
f"Message: {message.hex()}",
|
|
620
|
-
|
|
621
|
-
|
|
642
|
+
"Public Key: b5acf3599bc5fa5da1c00f6cc3d5bcf1560def67778b7f50a8c373a83f78761505b6250ab776e38a292e26628009aec4",
|
|
643
|
+
"Signature: c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
|
|
644
|
+
"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
|
|
622
645
|
f"Signing Mode: {SigningMode.CHIP_0002.value}",
|
|
623
646
|
]
|
|
624
647
|
run_cli_command_and_assert(capsys, root_dir, [*command_args, f"-a{xch_addr}"], assert_list)
|
|
@@ -633,9 +656,9 @@ def test_update_derivation_index(capsys: object, get_test_cli_clients: tuple[Tes
|
|
|
633
656
|
|
|
634
657
|
# set RPC Client
|
|
635
658
|
class UpdateDerivationIndexRpcClient(TestWalletRpcClient):
|
|
636
|
-
async def extend_derivation_index(self,
|
|
637
|
-
self.add_to_log("extend_derivation_index", (index,))
|
|
638
|
-
return
|
|
659
|
+
async def extend_derivation_index(self, request: ExtendDerivationIndex) -> ExtendDerivationIndexResponse:
|
|
660
|
+
self.add_to_log("extend_derivation_index", (request.index,))
|
|
661
|
+
return ExtendDerivationIndexResponse(request.index)
|
|
639
662
|
|
|
640
663
|
inst_rpc_client = UpdateDerivationIndexRpcClient()
|
|
641
664
|
test_rpc_clients.wallet_rpc_client = inst_rpc_client
|
|
@@ -657,8 +680,9 @@ def test_add_token(capsys: object, get_test_cli_clients: tuple[TestRpcClients, P
|
|
|
657
680
|
self.add_to_log("create_wallet_for_existing_cat", (asset_id,))
|
|
658
681
|
return {"wallet_id": 3}
|
|
659
682
|
|
|
660
|
-
async def set_cat_name(self,
|
|
661
|
-
self.add_to_log("set_cat_name", (wallet_id, name))
|
|
683
|
+
async def set_cat_name(self, request: CATSetName) -> CATSetNameResponse:
|
|
684
|
+
self.add_to_log("set_cat_name", (request.wallet_id, request.name))
|
|
685
|
+
return CATSetNameResponse(wallet_id=request.wallet_id)
|
|
662
686
|
|
|
663
687
|
inst_rpc_client = AddTokenRpcClient()
|
|
664
688
|
test_rpc_clients.wallet_rpc_client = inst_rpc_client
|
|
@@ -1025,14 +1049,14 @@ def test_take_offer(capsys: object, get_test_cli_clients: tuple[TestRpcClients,
|
|
|
1025
1049
|
),
|
|
1026
1050
|
)
|
|
1027
1051
|
|
|
1028
|
-
async def cat_asset_id_to_name(self,
|
|
1029
|
-
self.add_to_log("cat_asset_id_to_name", (asset_id,))
|
|
1030
|
-
if asset_id == cat_offered_id:
|
|
1031
|
-
return uint32(2), "offered cat"
|
|
1032
|
-
elif asset_id == cat_requested_id:
|
|
1033
|
-
return uint32(3), "requested cat"
|
|
1052
|
+
async def cat_asset_id_to_name(self, request: CATAssetIDToName) -> CATAssetIDToNameResponse:
|
|
1053
|
+
self.add_to_log("cat_asset_id_to_name", (request.asset_id,))
|
|
1054
|
+
if request.asset_id == cat_offered_id:
|
|
1055
|
+
return CATAssetIDToNameResponse(uint32(2), "offered cat")
|
|
1056
|
+
elif request.asset_id == cat_requested_id:
|
|
1057
|
+
return CATAssetIDToNameResponse(uint32(3), "requested cat")
|
|
1034
1058
|
else:
|
|
1035
|
-
return None
|
|
1059
|
+
return CATAssetIDToNameResponse(wallet_id=None, name=None)
|
|
1036
1060
|
|
|
1037
1061
|
inst_rpc_client = TakeOfferRpcClient()
|
|
1038
1062
|
test_rpc_clients.wallet_rpc_client = inst_rpc_client
|