File tree Expand file tree Collapse file tree 2 files changed +42
-1
lines changed
Expand file tree Collapse file tree 2 files changed +42
-1
lines changed Original file line number Diff line number Diff line change @@ -2247,7 +2247,7 @@ pub mod pallet {
22472247 #[ pallet:: call_index( 85 ) ]
22482248 #[ pallet:: weight( (
22492249 Weight :: from_parts( 7_343_000 , 0 )
2250- . saturating_add( <T as frame_system:: Config >:: DbWeight :: get( ) . reads( 1 ) )
2250+ . saturating_add( <T as frame_system:: Config >:: DbWeight :: get( ) . reads( 2 ) )
22512251 . saturating_add( <T as frame_system:: Config >:: DbWeight :: get( ) . writes( 1 ) ) ,
22522252 DispatchClass :: Operational ,
22532253 Pays :: Yes
@@ -2262,6 +2262,12 @@ pub mod pallet {
22622262 pallet_subtensor:: Pallet :: <T >:: if_subnet_exist( netuid) ,
22632263 Error :: <T >:: SubnetDoesNotExist
22642264 ) ;
2265+
2266+ let current_value = pallet_subtensor:: Pallet :: < T > :: get_emissions_disabled ( netuid) ;
2267+ if current_value == disabled {
2268+ return Ok ( ( ) ) ;
2269+ }
2270+
22652271 pallet_subtensor:: Pallet :: < T > :: set_emissions_disabled ( netuid, disabled) ;
22662272 log:: debug!(
22672273 "sudo_set_emissions_disabled( netuid: {netuid:?}, disabled: {disabled:?} ) "
Original file line number Diff line number Diff line change @@ -2943,3 +2943,38 @@ fn test_sudo_set_emissions_disabled_subnet_not_exist() {
29432943 ) ;
29442944 } ) ;
29452945}
2946+
2947+ #[ test]
2948+ fn test_sudo_set_emissions_disabled_same_value ( ) {
2949+ new_test_ext ( ) . execute_with ( || {
2950+ let netuid = NetUid :: from ( 1 ) ;
2951+ add_network ( netuid, 10 ) ;
2952+
2953+ // Default value is false
2954+ assert ! ( !SubtensorModule :: get_emissions_disabled( netuid) ) ;
2955+
2956+ // Setting to same value (false) should succeed without changing anything
2957+ assert_ok ! ( AdminUtils :: sudo_set_emissions_disabled(
2958+ <<Test as Config >:: RuntimeOrigin >:: root( ) ,
2959+ netuid,
2960+ false
2961+ ) ) ;
2962+ assert ! ( !SubtensorModule :: get_emissions_disabled( netuid) ) ;
2963+
2964+ // Now disable emissions
2965+ assert_ok ! ( AdminUtils :: sudo_set_emissions_disabled(
2966+ <<Test as Config >:: RuntimeOrigin >:: root( ) ,
2967+ netuid,
2968+ true
2969+ ) ) ;
2970+ assert ! ( SubtensorModule :: get_emissions_disabled( netuid) ) ;
2971+
2972+ // Setting to same value (true) should succeed without changing anything
2973+ assert_ok ! ( AdminUtils :: sudo_set_emissions_disabled(
2974+ <<Test as Config >:: RuntimeOrigin >:: root( ) ,
2975+ netuid,
2976+ true
2977+ ) ) ;
2978+ assert ! ( SubtensorModule :: get_emissions_disabled( netuid) ) ;
2979+ } ) ;
2980+ }
You can’t perform that action at this time.
0 commit comments