41
41
from chia .wallet .util .tx_config import DEFAULT_TX_CONFIG
42
42
from chia .wallet .util .wallet_types import WalletType
43
43
from chia .wallet .wallet_node import WalletNode
44
- from chia .wallet .wallet_request_types import GetWallets , PWAbsorbRewards , PWJoinPool , PWSelfPool , PWStatus
44
+ from chia .wallet .wallet_request_types import (
45
+ GetWalletBalance ,
46
+ GetWallets ,
47
+ PWAbsorbRewards ,
48
+ PWJoinPool ,
49
+ PWSelfPool ,
50
+ PWStatus ,
51
+ )
45
52
from chia .wallet .wallet_rpc_client import WalletRpcClient
46
53
from chia .wallet .wallet_state_manager import WalletStateManager
47
54
@@ -468,8 +475,8 @@ def mempool_empty() -> bool:
468
475
assert len (asset_id ) > 0
469
476
await full_node_api .process_all_wallet_transactions (wallet = wallet )
470
477
await full_node_api .wait_for_wallet_synced (wallet_node = wallet_node , timeout = 20 )
471
- bal_0 = await client .get_wallet_balance (cat_0_id )
472
- assert bal_0 [ " confirmed_wallet_balance" ] == 20
478
+ bal_0 = ( await client .get_wallet_balance (GetWalletBalance ( cat_0_id ))). wallet_balance
479
+ assert bal_0 . confirmed_wallet_balance == 20
473
480
474
481
# Test creation of many pool wallets. Use untrusted since that is the more complicated protocol, but don't
475
482
# run this code more than once, since it's slow.
@@ -535,8 +542,8 @@ async def test_absorb_self(
535
542
await add_blocks_in_batches (blocks [- 3 :], full_node_api .full_node )
536
543
await full_node_api .wait_for_wallet_synced (wallet_node = wallet_node , timeout = 20 )
537
544
538
- bal = await client .get_wallet_balance (2 )
539
- assert bal [ " confirmed_wallet_balance" ] == 2 * 1_750_000_000_000
545
+ bal = ( await client .get_wallet_balance (GetWalletBalance ( uint32 ( 2 )))). wallet_balance
546
+ assert bal . confirmed_wallet_balance == 2 * 1_750_000_000_000
540
547
541
548
# Claim 2 * 1.75, and farm a new 1.75
542
549
absorb_txs = (
@@ -561,8 +568,8 @@ async def test_absorb_self(
561
568
new_status : PoolWalletInfo = (await client .pw_status (PWStatus (uint32 (2 )))).state
562
569
assert status .current == new_status .current
563
570
assert status .tip_singleton_coin_id != new_status .tip_singleton_coin_id
564
- bal = await client .get_wallet_balance (2 )
565
- assert bal [ " confirmed_wallet_balance" ] == 1 * 1_750_000_000_000
571
+ bal = ( await client .get_wallet_balance (GetWalletBalance ( uint32 ( 2 )))). wallet_balance
572
+ assert bal . confirmed_wallet_balance == 1 * 1_750_000_000_000
566
573
567
574
# Claim another 1.75
568
575
absorb_txs1 = (
@@ -575,8 +582,8 @@ async def test_absorb_self(
575
582
576
583
await full_node_api .farm_blocks_to_puzzlehash (count = 2 , farm_to = our_ph , guarantee_transaction_blocks = True )
577
584
await full_node_api .wait_for_wallet_synced (wallet_node = wallet_node , timeout = 20 )
578
- bal = await client .get_wallet_balance (2 )
579
- assert bal [ " confirmed_wallet_balance" ] == 0
585
+ bal = ( await client .get_wallet_balance (GetWalletBalance ( uint32 ( 2 )))). wallet_balance
586
+ assert bal . confirmed_wallet_balance == 0
580
587
581
588
assert len (await wallet_node .wallet_state_manager .tx_store .get_unconfirmed_for_wallet (2 )) == 0
582
589
@@ -590,8 +597,8 @@ async def test_absorb_self(
590
597
await full_node_api .farm_blocks_to_puzzlehash (count = 2 , farm_to = our_ph , guarantee_transaction_blocks = True )
591
598
592
599
# Balance ignores non coinbase TX
593
- bal = await client .get_wallet_balance (2 )
594
- assert bal [ " confirmed_wallet_balance" ] == 0
600
+ bal = ( await client .get_wallet_balance (GetWalletBalance ( uint32 ( 2 )))). wallet_balance
601
+ assert bal . confirmed_wallet_balance == 0
595
602
596
603
with pytest .raises (ValueError ):
597
604
await client .pw_absorb_rewards (
@@ -626,8 +633,8 @@ async def test_absorb_self_multiple_coins(
626
633
pool_expected_confirmed_balance = 0
627
634
628
635
await full_node_api .wait_for_wallet_synced (wallet_node = wallet_node , timeout = 20 )
629
- main_bal = await client .get_wallet_balance (1 )
630
- assert main_bal [ " confirmed_wallet_balance" ] == main_expected_confirmed_balance
636
+ main_bal = ( await client .get_wallet_balance (GetWalletBalance ( uint32 ( 1 )))). wallet_balance
637
+ assert main_bal . confirmed_wallet_balance == main_expected_confirmed_balance
631
638
632
639
status : PoolWalletInfo = (await client .pw_status (PWStatus (uint32 (2 )))).state
633
640
assert status .current .state == PoolSingletonState .SELF_POOLING .value
@@ -650,10 +657,10 @@ async def test_absorb_self_multiple_coins(
650
657
pool_expected_confirmed_balance += block_count * 1_750_000_000_000
651
658
main_expected_confirmed_balance += block_count * 250_000_000_000
652
659
653
- main_bal = await client .get_wallet_balance (1 )
654
- assert main_bal [ " confirmed_wallet_balance" ] == main_expected_confirmed_balance
655
- bal = await client .get_wallet_balance (2 )
656
- assert bal [ " confirmed_wallet_balance" ] == pool_expected_confirmed_balance
660
+ main_bal = ( await client .get_wallet_balance (GetWalletBalance ( uint32 ( 1 )))). wallet_balance
661
+ assert main_bal . confirmed_wallet_balance == main_expected_confirmed_balance
662
+ bal = ( await client .get_wallet_balance (GetWalletBalance ( uint32 ( 2 )))). wallet_balance
663
+ assert bal . confirmed_wallet_balance == pool_expected_confirmed_balance
657
664
658
665
# Claim
659
666
absorb_txs = (
@@ -671,10 +678,10 @@ async def test_absorb_self_multiple_coins(
671
678
new_status : PoolWalletInfo = (await client .pw_status (PWStatus (uint32 (2 )))).state
672
679
assert status .current == new_status .current
673
680
assert status .tip_singleton_coin_id != new_status .tip_singleton_coin_id
674
- main_bal = await client .get_wallet_balance (1 )
675
- pool_bal = await client .get_wallet_balance (2 )
676
- assert pool_bal [ " confirmed_wallet_balance" ] == pool_expected_confirmed_balance
677
- assert main_bal [ " confirmed_wallet_balance" ] == main_expected_confirmed_balance # 10499999999999
681
+ main_bal = ( await client .get_wallet_balance (GetWalletBalance ( uint32 ( 1 )))). wallet_balance
682
+ pool_bal = ( await client .get_wallet_balance (GetWalletBalance ( uint32 ( 2 )))). wallet_balance
683
+ assert pool_bal . confirmed_wallet_balance == pool_expected_confirmed_balance
684
+ assert main_bal . confirmed_wallet_balance == main_expected_confirmed_balance # 10499999999999
678
685
679
686
@pytest .mark .anyio
680
687
async def test_absorb_pooling (
@@ -726,8 +733,8 @@ async def farming_to_pool() -> bool:
726
733
await full_node_api .wait_for_wallet_synced (wallet_node = wallet_node , timeout = 20 )
727
734
# Pooled plots don't have balance
728
735
main_expected_confirmed_balance += block_count * 250_000_000_000
729
- bal = await client .get_wallet_balance (2 )
730
- assert bal [ " confirmed_wallet_balance" ] == 0
736
+ bal = ( await client .get_wallet_balance (GetWalletBalance ( uint32 ( 2 )))). wallet_balance
737
+ assert bal . confirmed_wallet_balance == 0
731
738
732
739
# Claim block_count * 1.75
733
740
ret = await client .pw_absorb_rewards (
@@ -751,12 +758,12 @@ async def status_updated() -> bool:
751
758
752
759
await time_out_assert (20 , status_updated )
753
760
new_status = (await client .pw_status (PWStatus (uint32 (2 )))).state
754
- bal = await client .get_wallet_balance (2 )
755
- assert bal [ " confirmed_wallet_balance" ] == 0
761
+ bal = ( await client .get_wallet_balance (GetWalletBalance ( uint32 ( 2 )))). wallet_balance
762
+ assert bal . confirmed_wallet_balance == 0
756
763
757
764
await full_node_api .wait_for_wallet_synced (wallet_node = wallet_node , timeout = 20 )
758
- bal = await client .get_wallet_balance (2 )
759
- assert bal [ " confirmed_wallet_balance" ] == 0
765
+ bal = ( await client .get_wallet_balance (GetWalletBalance ( uint32 ( 2 )))). wallet_balance
766
+ assert bal . confirmed_wallet_balance == 0
760
767
assert len (await wallet_node .wallet_state_manager .tx_store .get_unconfirmed_for_wallet (2 )) == 0
761
768
peak = full_node_api .full_node .blockchain .get_peak ()
762
769
assert peak is not None
@@ -798,8 +805,8 @@ async def status_updated() -> bool:
798
805
status = (await client .pw_status (PWStatus (uint32 (2 )))).state
799
806
assert ret .fee_transaction is None
800
807
801
- bal2 = await client .get_wallet_balance (2 )
802
- assert bal2 [ " confirmed_wallet_balance" ] == 0
808
+ bal2 = ( await client .get_wallet_balance (GetWalletBalance ( uint32 ( 2 )))). wallet_balance
809
+ assert bal2 . confirmed_wallet_balance == 0
803
810
804
811
@pytest .mark .anyio
805
812
async def test_self_pooling_to_pooling (self , setup : Setup , fee : uint64 , self_hostname : str ) -> None :
0 commit comments