1234567891011121314151617use super::*;18use crate::{Pallet as Maintenance, Config};1920use frame_benchmarking::benchmarks;21use frame_system::{Call as RuntimeCall, RawOrigin};22use frame_support::{ensure, pallet_prelude::Weight, traits::StorePreimage};23use codec::Encode;24use sp_std::vec;2526benchmarks! {27 enable {28 }: _(RawOrigin::Root)29 verify {30 ensure!(<Enabled<T>>::get(), "didn't enable the MM");31 }3233 disable {34 Maintenance::<T>::enable(RawOrigin::Root.into())?;35 }: _(RawOrigin::Root)36 verify {37 ensure!(!<Enabled<T>>::get(), "didn't disable the MM");38 }3940 execute_preimage {41 let call_hash = RuntimeCall::<T>::set_storage { items: vec![] }.encode();42 let hash = T::Preimages::note(call_hash.into())?;43 }: _(RawOrigin::Root, hash, None, Weight::from_parts(100000000000, 100000000000))44 verify {45 }46}