1234567891011121314151617use super::*;18use crate::{Pallet as Maintenance, Config};1920use frame_benchmarking::benchmarks;21use frame_system::{Call as RuntimeCall, RawOrigin};22use frame_support::{ensure, traits::StorePreimage};23use codec::Encode;24use sp_std::vec;2526#[cfg(not(feature = "governance"))]27benchmarks! {28 enable {29 }: _(RawOrigin::Root)30 verify {31 ensure!(<Enabled<T>>::get(), "didn't enable the MM");32 }3334 disable {35 Maintenance::<T>::enable(RawOrigin::Root.into())?;36 }: _(RawOrigin::Root)37 verify {38 ensure!(!<Enabled<T>>::get(), "didn't disable the MM");39 }4041 execute_preimage {42 let call_hash = RuntimeCall::<T>::set_storage { items: vec![] }.encode();43 let hash = T::Preimages::note(call_hash.into())?;44 }: _(RawOrigin::Root, hash)45 verify {46 }47}4849#[cfg(feature = "governance")]50benchmarks! {51 enable {52 }: _(RawOrigin::Root)53 verify {54 ensure!(<Enabled<T>>::get(), "didn't enable the MM");55 }5657 disable {58 Maintenance::<T>::enable(RawOrigin::Root.into())?;59 }: _(RawOrigin::Root)60 verify {61 ensure!(!<Enabled<T>>::get(), "didn't disable the MM");62 }6364 execute_preimage {65 let call_hash = RuntimeCall::<T>::set_storage { items: vec![] }.encode();66 let hash = T::Preimages::note(call_hash.into())?;67 }: _(RawOrigin::Root, hash)68 verify {69 }70}