From 5832391751b5e6ab3eadbf6dfe3088db3c61f5bf Mon Sep 17 00:00:00 2001 From: Daniel Shiposha Date: Tue, 11 Oct 2022 19:06:22 +0000 Subject: [PATCH] fix: disable test-pallet by default --- --- a/test-pallets/utils/src/lib.rs +++ b/test-pallets/utils/src/lib.rs @@ -17,6 +17,8 @@ #![cfg_attr(not(feature = "std"), no_std)] pub use pallet::*; +use frame_support::pallet_prelude::*; +use frame_system::pallet_prelude::*; #[frame_support::pallet] pub mod pallet { @@ -41,19 +43,32 @@ pub struct Pallet(_); #[pallet::storage] + #[pallet::getter(fn is_enabled)] + pub type Enabled = StorageValue<_, bool, ValueQuery>; + + #[pallet::storage] #[pallet::getter(fn test_value)] pub type TestValue = StorageValue<_, u32, ValueQuery>; #[pallet::error] pub enum Error { + TestPalletDisabled, TriggerRollback, } #[pallet::call] impl Pallet { #[pallet::weight(10_000)] + pub fn enable(origin: OriginFor) -> DispatchResult { + ensure_root(origin)?; + >::set(true); + + Ok(()) + } + + #[pallet::weight(10_000)] pub fn set_test_value(origin: OriginFor, value: u32) -> DispatchResult { - ensure_signed(origin)?; + Self::ensure_origin_and_enabled(origin)?; >::put(value); @@ -82,6 +97,8 @@ id: ScheduledId, max_test_value: u32, ) -> DispatchResult { + Self::ensure_origin_and_enabled(origin.clone())?; + if >::get() < max_test_value { Self::inc_test_value(origin)?; } else { @@ -92,8 +109,16 @@ } #[pallet::weight(100_000_000)] - pub fn just_take_fee(_origin: OriginFor) -> DispatchResult { + pub fn just_take_fee(origin: OriginFor) -> DispatchResult { + Self::ensure_origin_and_enabled(origin)?; Ok(()) } } } + +impl Pallet { + fn ensure_origin_and_enabled(origin: OriginFor) -> DispatchResult { + ensure_signed(origin)?; + >::get().then(|| ()).ok_or(>::TestPalletDisabled.into()) + } +} -- gitstuff