Skip to content

Commit

Permalink
Contracts: Fix terminate benchmark (paritytech#3558)
Browse files Browse the repository at this point in the history
Co-authored-by: Alexander Theißen <[email protected]>
Co-authored-by: command-bot <>
  • Loading branch information
pgherveou and athei authored Mar 8, 2024
1 parent 101f1bb commit 6fb8666
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 1 deletion.
3 changes: 2 additions & 1 deletion substrate/frame/contracts/src/benchmarking/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -927,7 +927,7 @@ benchmarks! {
value: code_hashes_bytes,
},
],
deploy_body: Some(body::repeated_dyn(r, vec![
deploy_body: Some(body::repeated_dyn(T::MaxDelegateDependencies::get(), vec![
Counter(beneficiary_len as u32, code_hash_len as u32), // code_hash_ptr
Regular(Instruction::Call(1)),
])),
Expand All @@ -943,6 +943,7 @@ benchmarks! {
assert_eq!(T::Currency::total_balance(&beneficiary), 0u32.into());
assert_eq!(T::Currency::balance(&instance.account_id), Pallet::<T>::min_balance() * 2u32.into());
assert_ne!(T::Currency::balance_on_hold(&HoldReason::StorageDepositReserve.into(), &instance.account_id), 0u32.into());
assert_eq!(ContractInfoOf::<T>::get(&instance.account_id).unwrap().delegate_dependencies_count() as u32, T::MaxDelegateDependencies::get());
}: call(origin, instance.addr.clone(), 0u32.into(), Weight::MAX, None, vec![])
verify {
if r > 0 {
Expand Down
5 changes: 5 additions & 0 deletions substrate/frame/contracts/src/storage.rs
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,11 @@ impl<T: Config> ContractInfo<T> {
Ok(contract)
}

/// Returns the number of locked delegate dependencies.
pub fn delegate_dependencies_count(&self) -> usize {
self.delegate_dependencies.len()
}

/// Associated child trie unique id is built from the hash part of the trie id.
pub fn child_trie_info(&self) -> ChildInfo {
ChildInfo::new_default(self.trie_id.as_ref())
Expand Down

0 comments on commit 6fb8666

Please sign in to comment.