pub struct MockRuntime { /* private fields */ }Expand description
In-memory ContainerRuntime for tests.
Every container becomes ContainerStatus::Healthy 30 ms after
start, unless its name is configured as a failure target via
MockRuntime::fail_on.
Implementations§
Source§impl MockRuntime
impl MockRuntime
Sourcepub fn fail_on(&self, name: &str)
pub fn fail_on(&self, name: &str)
Configure the runtime to reject start for the resource whose
ContainerSpec.name equals name.
Sourcepub fn started_resources(&self) -> Vec<String>
pub fn started_resources(&self) -> Vec<String>
Snapshot of the resource names in start order.
Sourcepub fn stopped_resources(&self) -> Vec<String>
pub fn stopped_resources(&self) -> Vec<String>
Snapshot of the resource names in stop order.
Sourcepub fn started_specs(&self) -> Vec<ContainerSpec>
pub fn started_specs(&self) -> Vec<ContainerSpec>
Snapshot of every container spec the runtime has accepted.
Trait Implementations§
Source§impl Clone for MockRuntime
impl Clone for MockRuntime
Source§fn clone(&self) -> MockRuntime
fn clone(&self) -> MockRuntime
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl ContainerRuntime for MockRuntime
impl ContainerRuntime for MockRuntime
Source§async fn start(&self, spec: &ContainerSpec) -> Result<ContainerId, RuntimeError>
async fn start(&self, spec: &ContainerSpec) -> Result<ContainerId, RuntimeError>
Start a container according to
spec. Pulls the image if not
already present locally.Source§async fn stop(
&self,
id: &ContainerId,
_grace: Duration,
) -> Result<(), RuntimeError>
async fn stop( &self, id: &ContainerId, _grace: Duration, ) -> Result<(), RuntimeError>
Stop a container, sending
SIGTERM and then SIGKILL after
grace. Idempotent: stopping an already stopped container is a
no-op.Source§async fn remove(&self, name: &str) -> Result<(), RuntimeError>
async fn remove(&self, name: &str) -> Result<(), RuntimeError>
Remove a container by name, forcing removal even if it is still
running. Idempotent: removing a container that does not exist is a
no-op. Named volumes are preserved. Read more
Source§async fn inspect(
&self,
id: &ContainerId,
) -> Result<ContainerStatus, RuntimeError>
async fn inspect( &self, id: &ContainerId, ) -> Result<ContainerStatus, RuntimeError>
Report the current status of a container.
Source§async fn wait_healthy(
&self,
id: &ContainerId,
timeout: Duration,
) -> Result<(), RuntimeError>
async fn wait_healthy( &self, id: &ContainerId, timeout: Duration, ) -> Result<(), RuntimeError>
Block until the container reports a healthy status or
timeout
elapses. Returns crate::RuntimeError::Timeout in the latter
case.Source§async fn logs(
&self,
_id: &ContainerId,
_follow: bool,
) -> Result<LogChunkStream, RuntimeError>
async fn logs( &self, _id: &ContainerId, _follow: bool, ) -> Result<LogChunkStream, RuntimeError>
Stream logs from a container. When
follow is true the stream
stays open and emits new chunks as they arrive; when false the
stream completes after the existing logs are drained.Auto Trait Implementations§
impl Freeze for MockRuntime
impl RefUnwindSafe for MockRuntime
impl Send for MockRuntime
impl Sync for MockRuntime
impl Unpin for MockRuntime
impl UnsafeUnpin for MockRuntime
impl UnwindSafe for MockRuntime
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