Trait cw_multi_test::CosmosRouter
source · pub trait CosmosRouter {
type ExecC: CustomMsg;
type QueryC: CustomQuery;
// Required methods
fn execute(
&self,
api: &dyn Api,
storage: &mut dyn Storage,
block: &BlockInfo,
sender: Addr,
msg: CosmosMsg<Self::ExecC>,
) -> AnyResult<AppResponse>;
fn query(
&self,
api: &dyn Api,
storage: &dyn Storage,
block: &BlockInfo,
request: QueryRequest<Self::QueryC>,
) -> AnyResult<Binary>;
fn sudo(
&self,
api: &dyn Api,
storage: &mut dyn Storage,
block: &BlockInfo,
msg: SudoMsg,
) -> AnyResult<AppResponse>;
}
Expand description
A trait representing the Cosmos based chain’s router.
This trait is designed for routing messages within the Cosmos ecosystem. It is key to ensure that transactions and contract calls are directed to the correct destinations during testing, simulating real-world blockchain operations.
Required Associated Types§
sourcetype QueryC: CustomQuery
type QueryC: CustomQuery
Type of the query custom message.
Required Methods§
sourcefn execute(
&self,
api: &dyn Api,
storage: &mut dyn Storage,
block: &BlockInfo,
sender: Addr,
msg: CosmosMsg<Self::ExecC>,
) -> AnyResult<AppResponse>
fn execute( &self, api: &dyn Api, storage: &mut dyn Storage, block: &BlockInfo, sender: Addr, msg: CosmosMsg<Self::ExecC>, ) -> AnyResult<AppResponse>
Executes messages.