@@ -1669,3 +1669,45 @@ fn test_sudo_set_subnet_owner_hotkey() {
1669
1669
) ;
1670
1670
} ) ;
1671
1671
}
1672
+
1673
+ // cargo test --package pallet-admin-utils --lib -- tests::test_sudo_set_ema_halving --exact --show-output
1674
+ #[ test]
1675
+ fn test_sudo_set_ema_halving ( ) {
1676
+ new_test_ext ( ) . execute_with ( || {
1677
+ let netuid: u16 = 1 ;
1678
+ let to_be_set: u64 = 10 ;
1679
+ add_network ( netuid, 10 ) ;
1680
+
1681
+ let value_before: u64 = pallet_subtensor:: EMAPriceHalvingBlocks :: < Test > :: get ( netuid) ;
1682
+ assert_eq ! (
1683
+ AdminUtils :: sudo_set_ema_price_halving_period(
1684
+ <<Test as Config >:: RuntimeOrigin >:: signed( U256 :: from( 1 ) ) ,
1685
+ netuid,
1686
+ to_be_set
1687
+ ) ,
1688
+ Err ( DispatchError :: BadOrigin )
1689
+ ) ;
1690
+ let value_after_0: u64 = pallet_subtensor:: EMAPriceHalvingBlocks :: < Test > :: get ( netuid) ;
1691
+ assert_eq ! ( value_after_0, value_before) ;
1692
+
1693
+ let owner = U256 :: from ( 10 ) ;
1694
+ pallet_subtensor:: SubnetOwner :: < Test > :: insert ( netuid, owner) ;
1695
+ assert_eq ! (
1696
+ AdminUtils :: sudo_set_ema_price_halving_period(
1697
+ <<Test as Config >:: RuntimeOrigin >:: signed( owner) ,
1698
+ netuid,
1699
+ to_be_set
1700
+ ) ,
1701
+ Err ( DispatchError :: BadOrigin )
1702
+ ) ;
1703
+ let value_after_1: u64 = pallet_subtensor:: EMAPriceHalvingBlocks :: < Test > :: get ( netuid) ;
1704
+ assert_eq ! ( value_after_1, value_before) ;
1705
+ assert_ok ! ( AdminUtils :: sudo_set_ema_price_halving_period(
1706
+ <<Test as Config >:: RuntimeOrigin >:: root( ) ,
1707
+ netuid,
1708
+ to_be_set
1709
+ ) ) ;
1710
+ let value_after_2: u64 = pallet_subtensor:: EMAPriceHalvingBlocks :: < Test > :: get ( netuid) ;
1711
+ assert_eq ! ( value_after_2, to_be_set) ;
1712
+ } ) ;
1713
+ }
0 commit comments