@@ -1054,44 +1054,51 @@ fn test_do_swap_coldkey_success() {
10541054 new_test_ext ( 1 ) . execute_with ( || {
10551055 let old_coldkey = U256 :: from ( 1 ) ;
10561056 let new_coldkey = U256 :: from ( 2 ) ;
1057- let hotkey = U256 :: from ( 3 ) ;
1057+ let hotkey1 = U256 :: from ( 3 ) ;
1058+ let hotkey2 = U256 :: from ( 4 ) ;
10581059 let netuid = 1u16 ;
1059- let stake_amount = 1000u64 ;
1060- let free_balance = 12345 ;
1060+ let stake_amount1 = 1000u64 ;
1061+ let stake_amount2 = 2000u64 ;
1062+ let free_balance_old = 12345u64 ;
10611063
10621064 // Setup initial state
10631065 add_network ( netuid, 13 , 0 ) ;
1064- register_ok_neuron ( netuid, hotkey , old_coldkey, 0 ) ;
1065- SubtensorModule :: add_balance_to_coldkey_account ( & old_coldkey , stake_amount + free_balance ) ;
1066+ register_ok_neuron ( netuid, hotkey1 , old_coldkey, 0 ) ;
1067+ register_ok_neuron ( netuid , hotkey2 , old_coldkey , 0 ) ;
10661068
1067- // Add stake to the neuron
1069+ // Add balance to old coldkey
1070+ SubtensorModule :: add_balance_to_coldkey_account (
1071+ & old_coldkey,
1072+ stake_amount1 + stake_amount2 + free_balance_old,
1073+ ) ;
1074+
1075+ // Add stake to the neurons
1076+ assert_ok ! ( SubtensorModule :: add_stake(
1077+ <<Test as Config >:: RuntimeOrigin >:: signed( old_coldkey) ,
1078+ hotkey1,
1079+ stake_amount1
1080+ ) ) ;
10681081 assert_ok ! ( SubtensorModule :: add_stake(
10691082 <<Test as Config >:: RuntimeOrigin >:: signed( old_coldkey) ,
1070- hotkey ,
1071- stake_amount
1083+ hotkey2 ,
1084+ stake_amount2
10721085 ) ) ;
10731086
1074- log:: info!(
1075- "TotalColdkeyStake::<Test>::get(old_coldkey): {:?}" ,
1076- TotalColdkeyStake :: <Test >:: get( old_coldkey)
1087+ // Verify initial stakes and balances
1088+ assert_eq ! (
1089+ TotalColdkeyStake :: <Test >:: get( old_coldkey) ,
1090+ stake_amount1 + stake_amount2
10771091 ) ;
1078- log:: info!(
1079- "Stake::<Test>::get(old_coldkey, hotkey): {:?}" ,
1080- Stake :: <Test >:: get( hotkey, old_coldkey)
1092+ assert_eq ! ( Stake :: <Test >:: get( hotkey1, old_coldkey) , stake_amount1) ;
1093+ assert_eq ! ( Stake :: <Test >:: get( hotkey2, old_coldkey) , stake_amount2) ;
1094+ assert_eq ! (
1095+ OwnedHotkeys :: <Test >:: get( old_coldkey) ,
1096+ vec![ hotkey1, hotkey2]
1097+ ) ;
1098+ assert_eq ! (
1099+ SubtensorModule :: get_coldkey_balance( & old_coldkey) ,
1100+ free_balance_old
10811101 ) ;
1082-
1083- // Verify initial stake
1084- assert_eq ! ( TotalColdkeyStake :: <Test >:: get( old_coldkey) , stake_amount) ;
1085- assert_eq ! ( Stake :: <Test >:: get( hotkey, old_coldkey) , stake_amount) ;
1086-
1087- assert_eq ! ( OwnedHotkeys :: <Test >:: get( old_coldkey) , vec![ hotkey] ) ;
1088- assert ! ( !OwnedHotkeys :: <Test >:: get( new_coldkey) . contains( hotkey) ) ;
1089-
1090- // Get coldkey free balance before swap
1091- let balance = SubtensorModule :: get_coldkey_balance ( & old_coldkey) ;
1092- assert_eq ! ( balance, free_balance) ;
1093-
1094- let balance_new_coldkey = SubtensorModule :: get_coldkey_balance ( & new_coldkey) ;
10951102
10961103 // Perform the swap
10971104 assert_ok ! ( SubtensorModule :: do_swap_coldkey(
@@ -1101,16 +1108,30 @@ let balance_new_coldkey = SubtensorModule::get_coldkey_balance(&new_coldkey);
11011108 ) ) ;
11021109
11031110 // Verify the swap
1104- assert_eq ! ( Owner :: <Test >:: get( hotkey) , new_coldkey) ;
1105- assert_eq ! ( TotalColdkeyStake :: <Test >:: get( new_coldkey) , stake_amount) ;
1111+ assert_eq ! ( Owner :: <Test >:: get( hotkey1) , new_coldkey) ;
1112+ assert_eq ! ( Owner :: <Test >:: get( hotkey2) , new_coldkey) ;
1113+ assert_eq ! (
1114+ TotalColdkeyStake :: <Test >:: get( new_coldkey) ,
1115+ stake_amount1 + stake_amount2
1116+ ) ;
11061117 assert ! ( !TotalColdkeyStake :: <Test >:: contains_key( old_coldkey) ) ;
1107- assert_eq ! ( Stake :: <Test >:: get( hotkey, new_coldkey) , stake_amount) ;
1108- assert ! ( !Stake :: <Test >:: contains_key( hotkey, old_coldkey) ) ;
1109- assert_eq ! ( OwnedHotkeys :: <Test >:: get( new_coldkey) , vec![ hotkey] ) ;
1118+ assert_eq ! ( Stake :: <Test >:: get( hotkey1, new_coldkey) , stake_amount1) ;
1119+ assert_eq ! ( Stake :: <Test >:: get( hotkey2, new_coldkey) , stake_amount2) ;
1120+ assert ! ( !Stake :: <Test >:: contains_key( hotkey1, old_coldkey) ) ;
1121+ assert ! ( !Stake :: <Test >:: contains_key( hotkey2, old_coldkey) ) ;
1122+
1123+ // Verify OwnedHotkeys
1124+ let new_owned_hotkeys = OwnedHotkeys :: < Test > :: get ( new_coldkey) ;
1125+ assert ! ( new_owned_hotkeys. contains( & hotkey1) ) ;
1126+ assert ! ( new_owned_hotkeys. contains( & hotkey2) ) ;
1127+ assert_eq ! ( new_owned_hotkeys. len( ) , 2 ) ;
11101128 assert ! ( !OwnedHotkeys :: <Test >:: contains_key( old_coldkey) ) ;
11111129
11121130 // Verify balance transfer
1113- assert_eq ! ( SubtensorModule :: get_coldkey_balance( & new_coldkey) , balance + balance_new_coldkey) ;
1131+ assert_eq ! (
1132+ SubtensorModule :: get_coldkey_balance( & new_coldkey) ,
1133+ free_balance_old
1134+ ) ;
11141135 assert_eq ! ( SubtensorModule :: get_coldkey_balance( & old_coldkey) , 0 ) ;
11151136
11161137 // Verify event emission
@@ -1174,10 +1195,10 @@ fn test_swap_stake_for_coldkey() {
11741195 assert_eq ! ( Stake :: <Test >:: get( hotkey2, new_coldkey) , stake_amount2) ;
11751196 assert ! ( !Stake :: <Test >:: contains_key( hotkey1, old_coldkey) ) ;
11761197 assert ! ( !Stake :: <Test >:: contains_key( hotkey2, old_coldkey) ) ;
1177- assert_eq ! ( TotalHotkeyStake :: <Test >:: get( hotkey1) , stake_amount1) ;
1178- assert_eq ! ( TotalHotkeyStake :: <Test >:: get( hotkey2) , stake_amount2) ;
1179- assert_eq ! ( TotalStake :: <Test >:: get( ) , stake_amount1 + stake_amount2) ;
1180- assert_eq ! ( TotalIssuance :: <Test >:: get( ) , stake_amount1 + stake_amount2) ;
1198+ assert_eq ! ( TotalHotkeyStake :: <Test >:: get( hotkey1) , stake_amount1) ;
1199+ assert_eq ! ( TotalHotkeyStake :: <Test >:: get( hotkey2) , stake_amount2) ;
1200+ assert_eq ! ( TotalStake :: <Test >:: get( ) , stake_amount1 + stake_amount2) ;
1201+ assert_eq ! ( TotalIssuance :: <Test >:: get( ) , stake_amount1 + stake_amount2) ;
11811202 // Verify weight update
11821203 let expected_weight = <Test as frame_system:: Config >:: DbWeight :: get ( ) . reads_writes ( 3 , 4 ) ;
11831204 assert_eq ! ( weight, expected_weight) ;
0 commit comments