Skip to content

Commit

Permalink
fix fm tests
Browse files Browse the repository at this point in the history
dnkolegov committed Jan 9, 2024
1 parent ae0274e commit 18c0b6d
Showing 2 changed files with 14 additions and 8 deletions.
16 changes: 11 additions & 5 deletions fendermint/fendermint/testing/contract-test/src/ipc/subnet.rs
Original file line number Diff line number Diff line change
@@ -13,15 +13,19 @@ use fvm_ipld_blockstore::Blockstore;
use fvm_shared::crypto::signature::SECP_SIG_LEN;
use fvm_shared::econ::TokenAmount;
use ipc_actors_abis::subnet_actor_getter_facet::{self as getter, SubnetActorGetterFacet};
use ipc_actors_abis::subnet_actor_manager_facet::{self as manager, SubnetActorManagerFacet};
use ipc_actors_abis::subnet_actor_manager_facet::{SubnetActorManagerFacet};
use ipc_actors_abis::subnet_actor_checkpointing_facet::{self as checkpointer, SubnetActorCheckpointingFacet};

pub use ipc_actors_abis::register_subnet_facet::ConstructorParams as SubnetConstructorParams;
use ipc_actors_abis::subnet_actor_reward_facet::SubnetActorRewardFacet;

#[derive(Clone)]
pub struct SubnetCaller<DB> {
addr: EthAddress,
getter: ContractCaller<DB, SubnetActorGetterFacet<MockProvider>, NoRevert>,
manager: ContractCaller<DB, SubnetActorManagerFacet<MockProvider>, SubnetActorErrors>,
rewarder: ContractCaller<DB, SubnetActorRewardFacet<MockProvider>, SubnetActorErrors>,
checkpointer: ContractCaller<DB, SubnetActorCheckpointingFacet<MockProvider>, SubnetActorErrors>,
}

impl<DB> SubnetCaller<DB> {
@@ -30,6 +34,8 @@ impl<DB> SubnetCaller<DB> {
addr,
getter: ContractCaller::new(addr, SubnetActorGetterFacet::new),
manager: ContractCaller::new(addr, SubnetActorManagerFacet::new),
rewarder: ContractCaller::new(addr, SubnetActorRewardFacet::new),
checkpointer: ContractCaller::new(addr, SubnetActorCheckpointingFacet::new),
}
}

@@ -102,15 +108,15 @@ impl<DB: Blockstore> SubnetCaller<DB> {

/// Claim any refunds.
pub fn try_claim(&self, state: &mut FvmExecState<DB>, addr: &EthAddress) -> TryCallResult<()> {
self.manager.try_call(state, |c| c.claim().from(addr))
self.rewarder.try_call(state, |c| c.claim().from(addr))
}

/// Submit a bottom-up checkpoint.
pub fn try_submit_checkpoint(
&self,
state: &mut FvmExecState<DB>,
checkpoint: manager::BottomUpCheckpoint,
_messages: Vec<manager::CrossMsg>,
checkpoint: checkpointer::BottomUpCheckpoint,
_messages: Vec<checkpointer::CrossMsg>,
signatures: Vec<(EthAddress, [u8; SECP_SIG_LEN])>,
) -> TryCallResult<()> {
let mut addrs = Vec::new();
@@ -119,7 +125,7 @@ impl<DB: Blockstore> SubnetCaller<DB> {
addrs.push(ethers::types::Address::from(addr));
sigs.push(sig.into());
}
self.manager
self.checkpointer
.try_call(state, |c| c.submit_checkpoint(checkpoint, addrs, sigs))
}

Original file line number Diff line number Diff line change
@@ -25,7 +25,7 @@ use fvm_ipld_blockstore::Blockstore;
use fvm_shared::bigint::Integer;
use fvm_shared::econ::TokenAmount;
use fvm_shared::{address::Address, bigint::BigInt};
use ipc_actors_abis::subnet_actor_manager_facet as subnet_manager;
use ipc_actors_abis::subnet_actor_checkpointing_facet as checkpointer;
use ipc_sdk::subnet_id::SubnetID;

use super::{
@@ -280,8 +280,8 @@ impl StateMachine for StakingMachine {

let (root, route) = subnet_id_to_eth(&system.subnet_id).unwrap();

let checkpoint = subnet_manager::BottomUpCheckpoint {
subnet_id: subnet_manager::SubnetID { root, route },
let checkpoint = checkpointer::BottomUpCheckpoint {
subnet_id: checkpointer::SubnetID { root, route },
block_height: ethers::types::U256::from(*block_height),
block_hash: *block_hash,
next_configuration_number: *next_configuration_number,

0 comments on commit 18c0b6d

Please sign in to comment.