Struct MatrixMock

Source
pub struct MatrixMock<'a> { /* private fields */ }
Available on crate feature testing and non-WebAssembly only.
Expand description

A wrapper for a Mock as well as a MockServer, allowing us to call Mock::mount or Mock::mount_as_scoped without having to pass the MockServer reference (i.e. call mount() instead of mount(&server)).

Implementations§

Source§

impl MatrixMock<'_>

Source

pub fn expect<T: Into<Times>>(self, num_calls: T) -> Self

Set an expectation on the number of times this MatrixMock should match in the current test case.

Expectations are verified when the server is shutting down: if the expectation is not satisfied, the MatrixMockServer will panic and the error_message is shown.

By default, no expectation is set for MatrixMocks.

Source

pub fn named(self, name: impl Into<String>) -> Self

Assign a name to your mock.

The mock name will be used in error messages (e.g. if the mock expectation is not satisfied) and debug logs to help you identify what failed.

Source

pub fn mock_once(self) -> Self

Respond to a response of this endpoint exactly once.

After it’s been called, subsequent responses will hit the next handler or a 404.

Also verifies that it’s been called once.

Source

pub fn never(self) -> Self

Makes sure the endpoint is never reached.

Source

pub fn up_to_n_times(self, num: u64) -> Self

Specify an upper limit to the number of times you would like this MatrixMock to respond to incoming requests that satisfy the conditions imposed by your matchers.

Source

pub async fn mount(self)

Mount a MatrixMock on the attached server.

The MatrixMock will remain active until the MatrixMockServer is shut down. If you want to control or limit how long your MatrixMock stays active, check out Self::mount_as_scoped.

Source

pub async fn mount_as_scoped(self) -> MockGuard

Mount a MatrixMock as scoped on the attached server.

When using Self::mount, your MatrixMocks will be active until the MatrixMockServer is shut down.

When using mount_as_scoped, your MatrixMocks will be active as long as the returned MockGuard is not dropped.

When the returned MockGuard is dropped, MatrixMockServer will verify that the expectations set on the scoped MatrixMock were verified - if not, it will panic.

Auto Trait Implementations§

§

impl<'a> Freeze for MatrixMock<'a>

§

impl<'a> !RefUnwindSafe for MatrixMock<'a>

§

impl<'a> Send for MatrixMock<'a>

§

impl<'a> Sync for MatrixMock<'a>

§

impl<'a> Unpin for MatrixMock<'a>

§

impl<'a> !UnwindSafe for MatrixMock<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> CompatExt for T

§

fn compat(self) -> Compat<T>

Applies the [Compat] adapter by value. Read more
§

fn compat_ref(&self) -> Compat<&T>

Applies the [Compat] adapter by shared reference. Read more
§

fn compat_mut(&mut self) -> Compat<&mut T>

Applies the [Compat] adapter by mutable reference. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> FutureExt for T

Source§

fn with_context(self, otel_cx: Context) -> WithContext<Self>

Attaches the provided Context to this type, returning a WithContext wrapper. Read more
Source§

fn with_current_context(self) -> WithContext<Self>

Attaches the current Context to this type, returning a WithContext wrapper. Read more
Source§

impl<T, UT> HandleAlloc<UT> for T
where T: Send + Sync,

Source§

fn new_handle(value: Arc<T>) -> Handle

Create a new handle for an Arc value Read more
Source§

fn clone_handle(handle: Handle) -> Handle

Clone a handle Read more
Source§

fn consume_handle(handle: Handle) -> Arc<T>

Consume a handle, getting back the initial Arc<>
Source§

fn get_arc(handle: Handle) -> Arc<Self>

Get a clone of the Arc<> using a “borrowed” handle. Read more
Source§

impl<T, W> HasTypeWitness<W> for T
where W: MakeTypeWitness<Arg = T>, T: ?Sized,

Source§

const WITNESS: W = W::MAKE

A constant of the type witness
Source§

impl<T> Identity for T
where T: ?Sized,

Source§

const TYPE_EQ: TypeEq<T, <T as Identity>::Type> = TypeEq::NEW

Proof that Self is the same type as Self::Type, provides methods for casting between Self and Self::Type.
Source§

type Type = T

The same type as Self, used to emulate type equality bounds (T == U) with associated type equality constraints (T: Identity<Type = U>).
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
Source§

impl<T> Any for T
where T: Any,

Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T

Source§

impl<T> SendOutsideWasm for T
where T: Send,

Source§

impl<T> SyncOutsideWasm for T
where T: Sync,