mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-09 20:11:09 +00:00
permit setting treasury pallet initial funding through genesis (#7214)
This commit is contained in:
@@ -396,10 +396,14 @@ decl_storage! {
|
||||
add_extra_genesis {
|
||||
build(|_config| {
|
||||
// Create Treasury account
|
||||
let _ = T::Currency::make_free_balance_be(
|
||||
&<Module<T, I>>::account_id(),
|
||||
T::Currency::minimum_balance(),
|
||||
);
|
||||
let account_id = <Module<T, I>>::account_id();
|
||||
let min = T::Currency::minimum_balance();
|
||||
if T::Currency::free_balance(&account_id) < min {
|
||||
let _ = T::Currency::make_free_balance_be(
|
||||
&account_id,
|
||||
min,
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1148,3 +1148,20 @@ fn test_last_reward_migration() {
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn genesis_funding_works() {
|
||||
let mut t = frame_system::GenesisConfig::default().build_storage::<Test>().unwrap();
|
||||
let initial_funding = 100;
|
||||
pallet_balances::GenesisConfig::<Test>{
|
||||
// Total issuance will be 200 with treasury account initialized with 100.
|
||||
balances: vec![(0, 100), (Treasury::account_id(), initial_funding)],
|
||||
}.assimilate_storage(&mut t).unwrap();
|
||||
GenesisConfig::default().assimilate_storage::<Test, _>(&mut t).unwrap();
|
||||
let mut t: sp_io::TestExternalities = t.into();
|
||||
|
||||
t.execute_with(|| {
|
||||
assert_eq!(Balances::free_balance(Treasury::account_id()), initial_funding);
|
||||
assert_eq!(Treasury::pot(), initial_funding - Balances::minimum_balance());
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user