chia-blockchain 2.5.6rc2__py3-none-any.whl → 2.5.7__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 +252 -77
- 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 +9 -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 -33
- 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 +15 -16
- chia/full_node/mempool_manager.py +73 -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 +52 -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/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.7.dist-info}/METADATA +31 -31
- {chia_blockchain-2.5.6rc2.dist-info → chia_blockchain-2.5.7.dist-info}/RECORD +368 -240
- {chia_blockchain-2.5.6rc2.dist-info → chia_blockchain-2.5.7.dist-info}/WHEEL +1 -1
- {chia_blockchain-2.5.6rc2.dist-info → chia_blockchain-2.5.7.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.7.dist-info/licenses}/LICENSE +0 -0
|
@@ -19,6 +19,7 @@ from pathlib import Path
|
|
|
19
19
|
from typing import Any, Optional, cast
|
|
20
20
|
|
|
21
21
|
import anyio
|
|
22
|
+
import chia_rs.datalayer
|
|
22
23
|
import pytest
|
|
23
24
|
from chia_rs.sized_bytes import bytes32
|
|
24
25
|
from chia_rs.sized_ints import uint8, uint16, uint32, uint64
|
|
@@ -44,20 +45,21 @@ from chia.data_layer.data_layer import DataLayer
|
|
|
44
45
|
from chia.data_layer.data_layer_errors import KeyNotFoundError, OfferIntegrityError
|
|
45
46
|
from chia.data_layer.data_layer_rpc_api import DataLayerRpcApi
|
|
46
47
|
from chia.data_layer.data_layer_rpc_client import DataLayerRpcClient
|
|
48
|
+
from chia.data_layer.data_layer_service import DataLayerService
|
|
47
49
|
from chia.data_layer.data_layer_util import (
|
|
48
50
|
HashOnlyProof,
|
|
49
51
|
OfferStore,
|
|
50
52
|
ProofLayer,
|
|
51
53
|
Status,
|
|
52
54
|
StoreProofs,
|
|
55
|
+
get_delta_filename_path,
|
|
56
|
+
get_full_tree_filename_path,
|
|
53
57
|
key_hash,
|
|
54
58
|
leaf_hash,
|
|
55
59
|
)
|
|
56
60
|
from chia.data_layer.data_layer_wallet import DataLayerWallet, verify_offer
|
|
57
61
|
from chia.data_layer.data_store import DataStore
|
|
58
|
-
from chia.data_layer.
|
|
59
|
-
from chia.server.aliases import DataLayerService, WalletService
|
|
60
|
-
from chia.server.start_data_layer import create_data_layer_service
|
|
62
|
+
from chia.data_layer.start_data_layer import create_data_layer_service
|
|
61
63
|
from chia.simulator.block_tools import BlockTools
|
|
62
64
|
from chia.simulator.full_node_simulator import FullNodeSimulator
|
|
63
65
|
from chia.simulator.simulator_protocol import FarmNewBlockProtocol
|
|
@@ -73,8 +75,9 @@ from chia.wallet.transaction_record import TransactionRecord
|
|
|
73
75
|
from chia.wallet.util.tx_config import DEFAULT_TX_CONFIG
|
|
74
76
|
from chia.wallet.wallet import Wallet
|
|
75
77
|
from chia.wallet.wallet_node import WalletNode
|
|
76
|
-
from chia.wallet.wallet_request_types import DLLatestSingleton
|
|
78
|
+
from chia.wallet.wallet_request_types import CheckOfferValidity, DLLatestSingleton
|
|
77
79
|
from chia.wallet.wallet_rpc_api import WalletRpcApi
|
|
80
|
+
from chia.wallet.wallet_service import WalletService
|
|
78
81
|
|
|
79
82
|
pytestmark = pytest.mark.data_layer
|
|
80
83
|
nodes = tuple[WalletNode, FullNodeSimulator]
|
|
@@ -132,6 +135,7 @@ async def init_data_layer(
|
|
|
132
135
|
manage_data_interval: int = 5,
|
|
133
136
|
maximum_full_file_count: Optional[int] = None,
|
|
134
137
|
group_files_by_store: bool = False,
|
|
138
|
+
enable_batch_autoinsert: bool = True,
|
|
135
139
|
) -> AsyncIterator[DataLayer]:
|
|
136
140
|
async with init_data_layer_service(
|
|
137
141
|
wallet_rpc_port,
|
|
@@ -140,7 +144,7 @@ async def init_data_layer(
|
|
|
140
144
|
wallet_service,
|
|
141
145
|
manage_data_interval,
|
|
142
146
|
maximum_full_file_count,
|
|
143
|
-
|
|
147
|
+
enable_batch_autoinsert,
|
|
144
148
|
group_files_by_store,
|
|
145
149
|
) as data_layer_service:
|
|
146
150
|
yield data_layer_service._api.data_layer
|
|
@@ -190,7 +194,7 @@ async def is_transaction_confirmed(api: WalletRpcApi, tx_id: bytes32) -> bool:
|
|
|
190
194
|
except ValueError: # pragma: no cover
|
|
191
195
|
return False
|
|
192
196
|
|
|
193
|
-
return True if TransactionRecord.
|
|
197
|
+
return True if TransactionRecord.from_json_dict(val["transaction"]).confirmed else False # mypy
|
|
194
198
|
|
|
195
199
|
|
|
196
200
|
async def farm_block_with_spend(
|
|
@@ -221,7 +225,9 @@ async def check_singleton_confirmed(dl: DataLayer, store_id: bytes32) -> bool:
|
|
|
221
225
|
|
|
222
226
|
async def process_block_and_check_offer_validity(offer: TradingOffer, offer_setup: OfferSetup) -> bool:
|
|
223
227
|
await offer_setup.full_node_api.farm_blocks_to_puzzlehash(count=1, guarantee_transaction_blocks=True)
|
|
224
|
-
return (
|
|
228
|
+
return (
|
|
229
|
+
await offer_setup.maker.data_layer.wallet_rpc.check_offer_validity(CheckOfferValidity(offer=offer.to_bech32()))
|
|
230
|
+
).valid
|
|
225
231
|
|
|
226
232
|
|
|
227
233
|
async def run_cli_cmd(*args: str, root_path: Path) -> asyncio.subprocess.Process:
|
|
@@ -255,6 +261,7 @@ def create_mnemonic(seed: bytes = b"ab") -> str:
|
|
|
255
261
|
|
|
256
262
|
|
|
257
263
|
@pytest.mark.anyio
|
|
264
|
+
@pytest.mark.limit_consensus_modes(reason="does not depend on consensus rules")
|
|
258
265
|
async def test_create_insert_get(
|
|
259
266
|
self_hostname: str, one_wallet_and_one_simulator_services: SimulatorsAndWalletsServices, tmp_path: Path
|
|
260
267
|
) -> None:
|
|
@@ -334,6 +341,7 @@ async def test_create_insert_get(
|
|
|
334
341
|
|
|
335
342
|
|
|
336
343
|
@pytest.mark.anyio
|
|
344
|
+
@pytest.mark.limit_consensus_modes(reason="does not depend on consensus rules")
|
|
337
345
|
async def test_upsert(
|
|
338
346
|
self_hostname: str, one_wallet_and_one_simulator_services: SimulatorsAndWalletsServices, tmp_path: Path
|
|
339
347
|
) -> None:
|
|
@@ -364,6 +372,7 @@ async def test_upsert(
|
|
|
364
372
|
|
|
365
373
|
|
|
366
374
|
@pytest.mark.anyio
|
|
375
|
+
@pytest.mark.limit_consensus_modes(reason="does not depend on consensus rules")
|
|
367
376
|
async def test_create_double_insert(
|
|
368
377
|
self_hostname: str, one_wallet_and_one_simulator_services: SimulatorsAndWalletsServices, tmp_path: Path
|
|
369
378
|
) -> None:
|
|
@@ -401,6 +410,7 @@ async def test_create_double_insert(
|
|
|
401
410
|
|
|
402
411
|
|
|
403
412
|
@pytest.mark.anyio
|
|
413
|
+
@pytest.mark.limit_consensus_modes(reason="does not depend on consensus rules")
|
|
404
414
|
async def test_keys_values_ancestors(
|
|
405
415
|
self_hostname: str, one_wallet_and_one_simulator_services: SimulatorsAndWalletsServices, tmp_path: Path
|
|
406
416
|
) -> None:
|
|
@@ -414,20 +424,26 @@ async def test_keys_values_ancestors(
|
|
|
414
424
|
assert res is not None
|
|
415
425
|
store_id = bytes32.from_hexstr(res["id"])
|
|
416
426
|
await farm_block_check_singleton(data_layer, full_node_api, ph, store_id, wallet=wallet_rpc_api.service)
|
|
427
|
+
reference_hashes = []
|
|
417
428
|
key1 = b"a"
|
|
418
429
|
value1 = b"\x01\x02"
|
|
430
|
+
reference_hashes.append(leaf_hash(key=key1, value=value1))
|
|
419
431
|
changelist: list[dict[str, str]] = [{"action": "insert", "key": key1.hex(), "value": value1.hex()}]
|
|
420
432
|
key2 = b"b"
|
|
421
433
|
value2 = b"\x03\x02"
|
|
434
|
+
reference_hashes.append(leaf_hash(key=key2, value=value2))
|
|
422
435
|
changelist.append({"action": "insert", "key": key2.hex(), "value": value2.hex()})
|
|
423
436
|
key3 = b"c"
|
|
424
437
|
value3 = b"\x04\x05"
|
|
438
|
+
reference_hashes.append(leaf_hash(key=key3, value=value3))
|
|
425
439
|
changelist.append({"action": "insert", "key": key3.hex(), "value": value3.hex()})
|
|
426
440
|
key4 = b"d"
|
|
427
441
|
value4 = b"\x06\x03"
|
|
442
|
+
reference_hashes.append(leaf_hash(key=key4, value=value4))
|
|
428
443
|
changelist.append({"action": "insert", "key": key4.hex(), "value": value4.hex()})
|
|
429
444
|
key5 = b"e"
|
|
430
445
|
value5 = b"\x07\x01"
|
|
446
|
+
reference_hashes.append(leaf_hash(key=key5, value=value5))
|
|
431
447
|
changelist.append({"action": "insert", "key": key5.hex(), "value": value5.hex()})
|
|
432
448
|
res = await data_rpc_api.batch_update({"id": store_id.hex(), "changelist": changelist})
|
|
433
449
|
update_tx_rec0 = res["tx_id"]
|
|
@@ -445,9 +461,9 @@ async def test_keys_values_ancestors(
|
|
|
445
461
|
assert len(keys["keys"]) == len(dic)
|
|
446
462
|
for key in keys["keys"]:
|
|
447
463
|
assert key in dic
|
|
448
|
-
val = await data_rpc_api.get_ancestors({"id": store_id.hex(), "hash":
|
|
464
|
+
val = await data_rpc_api.get_ancestors({"id": store_id.hex(), "hash": reference_hashes[4].hex()})
|
|
449
465
|
# todo better assertions for get_ancestors result
|
|
450
|
-
assert len(val["ancestors"]) ==
|
|
466
|
+
assert len(val["ancestors"]) == 2
|
|
451
467
|
res_before = await data_rpc_api.get_root({"id": store_id.hex()})
|
|
452
468
|
assert res_before["confirmed"] is True
|
|
453
469
|
assert res_before["timestamp"] > 0
|
|
@@ -477,6 +493,7 @@ async def test_keys_values_ancestors(
|
|
|
477
493
|
|
|
478
494
|
|
|
479
495
|
@pytest.mark.anyio
|
|
496
|
+
@pytest.mark.limit_consensus_modes(reason="does not depend on consensus rules")
|
|
480
497
|
async def test_get_roots(
|
|
481
498
|
self_hostname: str, one_wallet_and_one_simulator_services: SimulatorsAndWalletsServices, tmp_path: Path
|
|
482
499
|
) -> None:
|
|
@@ -530,6 +547,7 @@ async def test_get_roots(
|
|
|
530
547
|
|
|
531
548
|
|
|
532
549
|
@pytest.mark.anyio
|
|
550
|
+
@pytest.mark.limit_consensus_modes(reason="does not depend on consensus rules")
|
|
533
551
|
async def test_get_root_history(
|
|
534
552
|
self_hostname: str, one_wallet_and_one_simulator_services: SimulatorsAndWalletsServices, tmp_path: Path
|
|
535
553
|
) -> None:
|
|
@@ -584,6 +602,7 @@ async def test_get_root_history(
|
|
|
584
602
|
|
|
585
603
|
|
|
586
604
|
@pytest.mark.anyio
|
|
605
|
+
@pytest.mark.limit_consensus_modes(reason="does not depend on consensus rules")
|
|
587
606
|
async def test_get_kv_diff(
|
|
588
607
|
self_hostname: str, one_wallet_and_one_simulator_services: SimulatorsAndWalletsServices, tmp_path: Path
|
|
589
608
|
) -> None:
|
|
@@ -651,13 +670,19 @@ async def test_get_kv_diff(
|
|
|
651
670
|
|
|
652
671
|
|
|
653
672
|
@pytest.mark.anyio
|
|
673
|
+
@pytest.mark.limit_consensus_modes(reason="does not depend on consensus rules")
|
|
654
674
|
async def test_batch_update_matches_single_operations(
|
|
655
675
|
self_hostname: str, one_wallet_and_one_simulator_services: SimulatorsAndWalletsServices, tmp_path: Path
|
|
656
676
|
) -> None:
|
|
657
677
|
wallet_rpc_api, full_node_api, wallet_rpc_port, ph, bt = await init_wallet_and_node(
|
|
658
678
|
self_hostname, one_wallet_and_one_simulator_services
|
|
659
679
|
)
|
|
660
|
-
async with init_data_layer(
|
|
680
|
+
async with init_data_layer(
|
|
681
|
+
wallet_rpc_port=wallet_rpc_port,
|
|
682
|
+
bt=bt,
|
|
683
|
+
db_path=tmp_path,
|
|
684
|
+
enable_batch_autoinsert=False,
|
|
685
|
+
) as data_layer:
|
|
661
686
|
data_rpc_api = DataLayerRpcApi(data_layer)
|
|
662
687
|
res = await data_rpc_api.create_data_store({})
|
|
663
688
|
assert res is not None
|
|
@@ -723,6 +748,7 @@ async def test_batch_update_matches_single_operations(
|
|
|
723
748
|
|
|
724
749
|
|
|
725
750
|
@pytest.mark.anyio
|
|
751
|
+
@pytest.mark.limit_consensus_modes(reason="does not depend on consensus rules")
|
|
726
752
|
async def test_get_owned_stores(
|
|
727
753
|
self_hostname: str, one_wallet_and_one_simulator_services: SimulatorsAndWalletsServices, tmp_path: Path
|
|
728
754
|
) -> None:
|
|
@@ -764,6 +790,7 @@ async def test_get_owned_stores(
|
|
|
764
790
|
|
|
765
791
|
|
|
766
792
|
@pytest.mark.anyio
|
|
793
|
+
@pytest.mark.limit_consensus_modes(reason="does not depend on consensus rules")
|
|
767
794
|
async def test_subscriptions(
|
|
768
795
|
self_hostname: str, one_wallet_and_one_simulator_services: SimulatorsAndWalletsServices, tmp_path: Path
|
|
769
796
|
) -> None:
|
|
@@ -1004,10 +1031,8 @@ async def process_for_data_layer_keys(
|
|
|
1004
1031
|
for sleep_time in backoff_times():
|
|
1005
1032
|
try:
|
|
1006
1033
|
value = await data_layer.get_value(store_id=store_id, key=expected_key)
|
|
1007
|
-
except
|
|
1008
|
-
|
|
1009
|
-
if "Key not found" not in str(e):
|
|
1010
|
-
raise # pragma: no cover
|
|
1034
|
+
except chia_rs.datalayer.UnknownKeyError:
|
|
1035
|
+
pass
|
|
1011
1036
|
else:
|
|
1012
1037
|
if expected_value is None or value == expected_value:
|
|
1013
1038
|
break
|
|
@@ -1596,6 +1621,7 @@ make_one_take_one_unpopulated_reference = MakeAndTakeReference(
|
|
|
1596
1621
|
indirect=["offer_setup"],
|
|
1597
1622
|
)
|
|
1598
1623
|
@pytest.mark.anyio
|
|
1624
|
+
@pytest.mark.limit_consensus_modes(reason="does not depend on consensus rules")
|
|
1599
1625
|
async def test_make_and_take_offer(offer_setup: OfferSetup, reference: MakeAndTakeReference) -> None:
|
|
1600
1626
|
offer_setup = await populate_offer_setup(offer_setup=offer_setup, count=reference.entries_to_insert)
|
|
1601
1627
|
|
|
@@ -1708,6 +1734,7 @@ async def test_make_and_then_take_offer_invalid_inclusion_key(
|
|
|
1708
1734
|
|
|
1709
1735
|
|
|
1710
1736
|
@pytest.mark.anyio
|
|
1737
|
+
@pytest.mark.limit_consensus_modes(reason="does not depend on consensus rules")
|
|
1711
1738
|
async def test_verify_offer_rpc_valid(bare_data_layer_api: DataLayerRpcApi) -> None:
|
|
1712
1739
|
reference = make_one_take_one_reference
|
|
1713
1740
|
|
|
@@ -1726,6 +1753,7 @@ async def test_verify_offer_rpc_valid(bare_data_layer_api: DataLayerRpcApi) -> N
|
|
|
1726
1753
|
|
|
1727
1754
|
|
|
1728
1755
|
@pytest.mark.anyio
|
|
1756
|
+
@pytest.mark.limit_consensus_modes(reason="does not depend on consensus rules")
|
|
1729
1757
|
async def test_verify_offer_rpc_invalid(bare_data_layer_api: DataLayerRpcApi) -> None:
|
|
1730
1758
|
reference = make_one_take_one_reference
|
|
1731
1759
|
broken_taker_offer = copy.deepcopy(reference.make_offer_response)
|
|
@@ -1746,6 +1774,7 @@ async def test_verify_offer_rpc_invalid(bare_data_layer_api: DataLayerRpcApi) ->
|
|
|
1746
1774
|
|
|
1747
1775
|
|
|
1748
1776
|
@pytest.mark.anyio
|
|
1777
|
+
@pytest.mark.limit_consensus_modes(reason="does not depend on consensus rules")
|
|
1749
1778
|
async def test_make_offer_failure_rolls_back_db(offer_setup: OfferSetup) -> None:
|
|
1750
1779
|
# TODO: only needs the maker and db? wallet?
|
|
1751
1780
|
reference = make_one_take_one_reference
|
|
@@ -1788,6 +1817,7 @@ async def test_make_offer_failure_rolls_back_db(offer_setup: OfferSetup) -> None
|
|
|
1788
1817
|
],
|
|
1789
1818
|
)
|
|
1790
1819
|
@pytest.mark.anyio
|
|
1820
|
+
@pytest.mark.limit_consensus_modes(reason="does not depend on consensus rules")
|
|
1791
1821
|
async def test_make_and_cancel_offer(offer_setup: OfferSetup, reference: MakeAndTakeReference) -> None:
|
|
1792
1822
|
offer_setup = await populate_offer_setup(offer_setup=offer_setup, count=reference.entries_to_insert)
|
|
1793
1823
|
|
|
@@ -1824,9 +1854,11 @@ async def test_make_and_cancel_offer(offer_setup: OfferSetup, reference: MakeAnd
|
|
|
1824
1854
|
for _ in range(10):
|
|
1825
1855
|
if not (
|
|
1826
1856
|
await offer_setup.maker.data_layer.wallet_rpc.check_offer_validity(
|
|
1827
|
-
|
|
1857
|
+
CheckOfferValidity(
|
|
1858
|
+
offer=TradingOffer.from_bytes(hexstr_to_bytes(maker_response["offer"]["offer"])).to_bech32()
|
|
1859
|
+
),
|
|
1828
1860
|
)
|
|
1829
|
-
)
|
|
1861
|
+
).valid:
|
|
1830
1862
|
break
|
|
1831
1863
|
await offer_setup.full_node_api.farm_blocks_to_puzzlehash(count=1, guarantee_transaction_blocks=True)
|
|
1832
1864
|
await asyncio.sleep(0.5)
|
|
@@ -1864,6 +1896,7 @@ async def test_make_and_cancel_offer(offer_setup: OfferSetup, reference: MakeAnd
|
|
|
1864
1896
|
],
|
|
1865
1897
|
)
|
|
1866
1898
|
@pytest.mark.anyio
|
|
1899
|
+
@pytest.mark.limit_consensus_modes(reason="does not depend on consensus rules")
|
|
1867
1900
|
async def test_make_and_cancel_offer_then_update(
|
|
1868
1901
|
offer_setup: OfferSetup, reference: MakeAndTakeReference, secure: bool
|
|
1869
1902
|
) -> None:
|
|
@@ -1953,6 +1986,7 @@ async def test_make_and_cancel_offer_then_update(
|
|
|
1953
1986
|
],
|
|
1954
1987
|
)
|
|
1955
1988
|
@pytest.mark.anyio
|
|
1989
|
+
@pytest.mark.limit_consensus_modes(reason="does not depend on consensus rules")
|
|
1956
1990
|
async def test_make_and_cancel_offer_not_secure_clears_pending_roots(
|
|
1957
1991
|
offer_setup: OfferSetup,
|
|
1958
1992
|
reference: MakeAndTakeReference,
|
|
@@ -1995,6 +2029,7 @@ async def test_make_and_cancel_offer_not_secure_clears_pending_roots(
|
|
|
1995
2029
|
|
|
1996
2030
|
@pytest.mark.limit_consensus_modes(reason="does not depend on consensus rules")
|
|
1997
2031
|
@pytest.mark.anyio
|
|
2032
|
+
@pytest.mark.limit_consensus_modes(reason="does not depend on consensus rules")
|
|
1998
2033
|
async def test_get_sync_status(
|
|
1999
2034
|
self_hostname: str, one_wallet_and_one_simulator_services: SimulatorsAndWalletsServices, tmp_path: Path
|
|
2000
2035
|
) -> None:
|
|
@@ -2277,7 +2312,7 @@ async def test_unsubscribe_unknown(
|
|
|
2277
2312
|
bare_data_layer_api: DataLayerRpcApi,
|
|
2278
2313
|
seeded_random: random.Random,
|
|
2279
2314
|
) -> None:
|
|
2280
|
-
with pytest.raises(RuntimeError, match="No subscription found for the given store_id
|
|
2315
|
+
with pytest.raises(RuntimeError, match="No subscription found for the given store_id"):
|
|
2281
2316
|
await bare_data_layer_api.unsubscribe(request={"id": bytes32.random(seeded_random).hex(), "retain": False})
|
|
2282
2317
|
|
|
2283
2318
|
|
|
@@ -2974,18 +3009,18 @@ async def test_pagination_rpcs(
|
|
|
2974
3009
|
"total_pages": 1,
|
|
2975
3010
|
"total_bytes": 8,
|
|
2976
3011
|
"diff": [
|
|
2977
|
-
{"type": "DELETE", "key": key6.hex(), "value": value6.hex()},
|
|
2978
3012
|
{"type": "INSERT", "key": key6.hex(), "value": new_value.hex()},
|
|
3013
|
+
{"type": "DELETE", "key": key6.hex(), "value": value6.hex()},
|
|
2979
3014
|
],
|
|
2980
3015
|
}
|
|
2981
3016
|
assert diff_res == diff_reference
|
|
2982
3017
|
|
|
2983
|
-
with pytest.raises(Exception, match="
|
|
3018
|
+
with pytest.raises(Exception, match="Cannot find merkle blob"):
|
|
2984
3019
|
await data_rpc_api.get_keys(
|
|
2985
3020
|
{"id": store_id.hex(), "page": 0, "max_page_size": 100, "root_hash": bytes32([0] * 31 + [1]).hex()}
|
|
2986
3021
|
)
|
|
2987
3022
|
|
|
2988
|
-
with pytest.raises(Exception, match="
|
|
3023
|
+
with pytest.raises(Exception, match="Cannot find merkle blob"):
|
|
2989
3024
|
await data_rpc_api.get_keys_values(
|
|
2990
3025
|
{"id": store_id.hex(), "page": 0, "max_page_size": 100, "root_hash": bytes32([0] * 31 + [1]).hex()}
|
|
2991
3026
|
)
|
|
@@ -3025,7 +3060,12 @@ async def test_pagination_cmds(
|
|
|
3025
3060
|
wallet_rpc_api, full_node_api, wallet_rpc_port, ph, bt = await init_wallet_and_node(
|
|
3026
3061
|
self_hostname, one_wallet_and_one_simulator_services
|
|
3027
3062
|
)
|
|
3028
|
-
async with init_data_layer_service(
|
|
3063
|
+
async with init_data_layer_service(
|
|
3064
|
+
wallet_rpc_port=wallet_rpc_port,
|
|
3065
|
+
bt=bt,
|
|
3066
|
+
db_path=tmp_path,
|
|
3067
|
+
enable_batch_autoinsert=False,
|
|
3068
|
+
) as data_layer_service:
|
|
3029
3069
|
assert data_layer_service.rpc_server is not None
|
|
3030
3070
|
rpc_port = data_layer_service.rpc_server.listen_port
|
|
3031
3071
|
data_layer = data_layer_service._api.data_layer
|
|
@@ -3173,7 +3213,7 @@ async def test_pagination_cmds(
|
|
|
3173
3213
|
if max_page_size is None or max_page_size == 100:
|
|
3174
3214
|
assert keys == {
|
|
3175
3215
|
"keys": ["0x61616161", "0x6161"],
|
|
3176
|
-
"root_hash": "
|
|
3216
|
+
"root_hash": "0x3f4ae7b8e10ef48b3114843537d5def989ee0a3b6568af7e720a71730f260fa1",
|
|
3177
3217
|
"success": True,
|
|
3178
3218
|
"total_bytes": 6,
|
|
3179
3219
|
"total_pages": 1,
|
|
@@ -3193,7 +3233,7 @@ async def test_pagination_cmds(
|
|
|
3193
3233
|
"value": "0x6161",
|
|
3194
3234
|
},
|
|
3195
3235
|
],
|
|
3196
|
-
"root_hash": "
|
|
3236
|
+
"root_hash": "0x3f4ae7b8e10ef48b3114843537d5def989ee0a3b6568af7e720a71730f260fa1",
|
|
3197
3237
|
"success": True,
|
|
3198
3238
|
"total_bytes": 9,
|
|
3199
3239
|
"total_pages": 1,
|
|
@@ -3210,7 +3250,7 @@ async def test_pagination_cmds(
|
|
|
3210
3250
|
elif max_page_size == 5:
|
|
3211
3251
|
assert keys == {
|
|
3212
3252
|
"keys": ["0x61616161"],
|
|
3213
|
-
"root_hash": "
|
|
3253
|
+
"root_hash": "0x3f4ae7b8e10ef48b3114843537d5def989ee0a3b6568af7e720a71730f260fa1",
|
|
3214
3254
|
"success": True,
|
|
3215
3255
|
"total_bytes": 6,
|
|
3216
3256
|
"total_pages": 2,
|
|
@@ -3224,7 +3264,7 @@ async def test_pagination_cmds(
|
|
|
3224
3264
|
"value": "0x61",
|
|
3225
3265
|
}
|
|
3226
3266
|
],
|
|
3227
|
-
"root_hash": "
|
|
3267
|
+
"root_hash": "0x3f4ae7b8e10ef48b3114843537d5def989ee0a3b6568af7e720a71730f260fa1",
|
|
3228
3268
|
"success": True,
|
|
3229
3269
|
"total_bytes": 9,
|
|
3230
3270
|
"total_pages": 2,
|
|
@@ -3411,7 +3451,10 @@ async def test_unsubmitted_batch_update(
|
|
|
3411
3451
|
count=NUM_BLOCKS_WITHOUT_SUBMIT, guarantee_transaction_blocks=True
|
|
3412
3452
|
)
|
|
3413
3453
|
keys_values = await data_rpc_api.get_keys_values({"id": store_id.hex()})
|
|
3414
|
-
|
|
3454
|
+
# order agnostic comparison of the list of dicts
|
|
3455
|
+
assert {item["key"]: item for item in keys_values["keys_values"]} == {
|
|
3456
|
+
item["key"]: item for item in prev_keys_values["keys_values"]
|
|
3457
|
+
}
|
|
3415
3458
|
|
|
3416
3459
|
pending_root = await data_layer.data_store.get_pending_root(store_id=store_id)
|
|
3417
3460
|
assert pending_root is not None
|
|
@@ -3744,7 +3787,11 @@ async def test_unsubmitted_batch_db_migration(
|
|
|
3744
3787
|
await data_rpc_api.batch_update({"id": store_id.hex(), "changelist": changelist, "submit_on_chain": False})
|
|
3745
3788
|
|
|
3746
3789
|
# Artificially remove the first migration.
|
|
3747
|
-
async with DataStore.managed(
|
|
3790
|
+
async with DataStore.managed(
|
|
3791
|
+
database=tmp_path.joinpath("db.sqlite"),
|
|
3792
|
+
merkle_blobs_path=tmp_path.joinpath("merkle-blobs"),
|
|
3793
|
+
key_value_blobs_path=tmp_path.joinpath("key-value-blobs"),
|
|
3794
|
+
) as data_store:
|
|
3748
3795
|
async with data_store.db_wrapper.writer() as writer:
|
|
3749
3796
|
await writer.execute("DELETE FROM schema")
|
|
3750
3797
|
|
|
@@ -3761,7 +3808,9 @@ async def test_unsubmitted_batch_db_migration(
|
|
|
3761
3808
|
update_tx_rec1 = res["tx_id"]
|
|
3762
3809
|
await farm_block_with_spend(full_node_api, ph, update_tx_rec1, wallet_rpc_api)
|
|
3763
3810
|
keys = await data_rpc_api.get_keys({"id": store_id.hex()})
|
|
3764
|
-
|
|
3811
|
+
# order agnostic comparison of the list
|
|
3812
|
+
keys["keys"] = set(keys["keys"])
|
|
3813
|
+
assert keys == {"keys": {"0x30303031", "0x30303030"}}
|
|
3765
3814
|
|
|
3766
3815
|
|
|
3767
3816
|
@pytest.mark.limit_consensus_modes(reason="does not depend on consensus rules")
|