pub struct IcpUser {
pub principal: Principal,
/* private fields */
}Expand description
A simulated Internet Computer user for use in tests.
Provides a simplified API for calling methods and deploying canisters.
Wraps a Principal identity and a reference to the PocketIc test environment.
Fields§
§principal: PrincipalThe user’s principal identity used for calls and deployments.
Implementations§
Source§impl IcpUser
impl IcpUser
Sourcepub fn call<ResultType>(
&self,
canister_id: Principal,
call_mode: CallMode,
method: &str,
args: Result<Vec<u8>, Error>,
) -> CallBuilder<ResultType, Self>where
ResultType: for<'a> Deserialize<'a> + CandidType,
pub fn call<ResultType>(
&self,
canister_id: Principal,
call_mode: CallMode,
method: &str,
args: Result<Vec<u8>, Error>,
) -> CallBuilder<ResultType, Self>where
ResultType: for<'a> Deserialize<'a> + CandidType,
Prepare a canister method call builder for the user.
§Parameters
canister_id: The principal ID of the target canister.call_mode: Whether the call is a query or an update.method: The name of the method to invoke.args: Encoded Candid arguments or an error.
§Returns
A CallBuilder for the specified method, result type, and context.
Sourcepub fn deploy<Canister>(
&self,
args: Result<Vec<u8>, Error>,
new: fn(&Self, Principal) -> Canister,
) -> DeployBuilder<Canister, Self>
pub fn deploy<Canister>( &self, args: Result<Vec<u8>, Error>, new: fn(&Self, Principal) -> Canister, ) -> DeployBuilder<Canister, Self>
Prepare a new canister deployment as this user.
§Parameters
args: Encoded Candid arguments for the canister constructor, or an error.new: A function to instantiate the canister wrapper after deployment.
§Returns
A DeployBuilder for the specified canister.
Trait Implementations§
Source§impl Caller for IcpUser
impl Caller for IcpUser
Source§fn call<ResultType>(
&self,
canister_id: Principal,
call_mode: CallMode,
method: &str,
args: Result<Vec<u8>, Error>,
) -> CallBuilder<ResultType, Self::Provider>where
ResultType: for<'a> Deserialize<'a> + CandidType,
fn call<ResultType>(
&self,
canister_id: Principal,
call_mode: CallMode,
method: &str,
args: Result<Vec<u8>, Error>,
) -> CallBuilder<ResultType, Self::Provider>where
ResultType: for<'a> Deserialize<'a> + CandidType,
Dispatch a call via this user, required by the Caller trait.
type Provider = IcpUser
Auto Trait Implementations§
impl Freeze for IcpUser
impl !RefUnwindSafe for IcpUser
impl Send for IcpUser
impl Sync for IcpUser
impl Unpin for IcpUser
impl !UnwindSafe for IcpUser
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more