Skip to content
Prev Previous commit
Next Next commit
authority
  • Loading branch information
ferrell-code committed Sep 2, 2021
commit 1832f5515cffa15b0a782907934dca3a325ec9ce
6 changes: 5 additions & 1 deletion authority/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -206,7 +206,11 @@ pub mod module {
let info = call.get_dispatch_info();
(T::WeightInfo::dispatch_as().saturating_add(info.weight), info.class)
})]
pub fn dispatch_as(origin: OriginFor<T>, as_origin: T::AsOriginId, call: Box<CallOf<T>>) -> DispatchResult {
pub fn dispatch_as(
origin: OriginFor<T>,
as_origin: Box<T::AsOriginId>,
call: Box<CallOf<T>>,
) -> DispatchResult {
as_origin.check_dispatch_from(origin)?;

let e = call.dispatch(as_origin.into_origin().into());
Expand Down
20 changes: 10 additions & 10 deletions authority/src/tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -21,31 +21,31 @@ fn dispatch_as_work() {
let ensure_signed_call = Call::System(frame_system::Call::remark(vec![]));
assert_ok!(Authority::dispatch_as(
Origin::root(),
MockAsOriginId::Root,
Box::new(MockAsOriginId::Root),
Box::new(ensure_root_call)
));
assert_ok!(Authority::dispatch_as(
Origin::root(),
MockAsOriginId::Account1,
Box::new(MockAsOriginId::Account1),
Box::new(ensure_signed_call.clone())
));
assert_noop!(
Authority::dispatch_as(
Origin::signed(1),
MockAsOriginId::Root,
Box::new(MockAsOriginId::Root),
Box::new(ensure_signed_call.clone())
),
BadOrigin,
);
assert_ok!(Authority::dispatch_as(
Origin::signed(1),
MockAsOriginId::Account1,
Box::new(MockAsOriginId::Account1),
Box::new(ensure_signed_call.clone())
));
assert_noop!(
Authority::dispatch_as(
Origin::signed(1),
MockAsOriginId::Account2,
Box::new(MockAsOriginId::Account2),
Box::new(ensure_signed_call)
),
BadOrigin,
Expand All @@ -58,7 +58,7 @@ fn schedule_dispatch_at_work() {
ExtBuilder::default().build().execute_with(|| {
let ensure_root_call = Call::System(frame_system::Call::fill_block(Perbill::one()));
let call = Call::Authority(authority::Call::dispatch_as(
MockAsOriginId::Root,
Box::new(MockAsOriginId::Root),
Box::new(ensure_root_call),
));
run_to_block(1);
Expand Down Expand Up @@ -116,7 +116,7 @@ fn schedule_dispatch_after_work() {
ExtBuilder::default().build().execute_with(|| {
let ensure_root_call = Call::System(frame_system::Call::fill_block(Perbill::one()));
let call = Call::Authority(authority::Call::dispatch_as(
MockAsOriginId::Root,
Box::new(MockAsOriginId::Root),
Box::new(ensure_root_call),
));
run_to_block(1);
Expand Down Expand Up @@ -175,7 +175,7 @@ fn fast_track_scheduled_dispatch_work() {
System::set_block_number(1);
let ensure_root_call = Call::System(frame_system::Call::fill_block(Perbill::one()));
let call = Call::Authority(authority::Call::dispatch_as(
MockAsOriginId::Root,
Box::new(MockAsOriginId::Root),
Box::new(ensure_root_call),
));
run_to_block(1);
Expand Down Expand Up @@ -252,7 +252,7 @@ fn delay_scheduled_dispatch_work() {
System::set_block_number(1);
let ensure_root_call = Call::System(frame_system::Call::fill_block(Perbill::one()));
let call = Call::Authority(authority::Call::dispatch_as(
MockAsOriginId::Root,
Box::new(MockAsOriginId::Root),
Box::new(ensure_root_call),
));
run_to_block(1);
Expand Down Expand Up @@ -328,7 +328,7 @@ fn cancel_scheduled_dispatch_work() {
ExtBuilder::default().build().execute_with(|| {
let ensure_root_call = Call::System(frame_system::Call::fill_block(Perbill::one()));
let call = Call::Authority(authority::Call::dispatch_as(
MockAsOriginId::Root,
Box::new(MockAsOriginId::Root),
Box::new(ensure_root_call),
));
run_to_block(1);
Expand Down