Runner

Struct Runner 

Source
pub struct Runner { /* private fields */ }

Implementations§

Source§

impl Runner

A test helper that runs a postgres container and waits for it to be ready.

Source

pub fn new() -> Self

Create a new instance of the test helper.

Source

pub fn container_tag(self, container_tag: &'static str) -> Self

Set the postgres image tag to use. See https://hub.docker.com/_/postgres for available tags.

Defaults to 15.3-alpine3.18.

Source

pub fn container_timeout(self, container_timeout: Duration) -> Self

Set the container timeout for the test. The test will fail if the container is not ready within this time.

Defaults to 10 seconds.

Source

pub fn connection_timeout(self, timeout: Duration) -> Self

Set the connection timeout for the test. The test will fail if the connection is not established within this time.

Defaults to 2 seconds.

Source

pub fn connection_test_interval( self, connection_test_interval: Duration, ) -> Self

Set the interval between connection attempts.

Defaults to 100 milliseconds.

Source

pub fn run<T, Fut>(self, f: T)
where T: FnOnce(String) -> Fut + UnwindSafe, Fut: Future<Output = ()> + Send + 'static,

Run the test. The test will be passed a postgres connection url. The test will fail if the connection is not established within the connection timeout. The test will fail if the test function panics.

Trait Implementations§

Source§

impl Default for Runner

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

§

impl Freeze for Runner

§

impl RefUnwindSafe for Runner

§

impl Send for Runner

§

impl Sync for Runner

§

impl Unpin for Runner

§

impl UnwindSafe for Runner

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

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

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

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

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

Source§

impl<T> WithSubscriber for T

Source§

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

fn with_current_subscriber(self) -> WithDispatch<Self>

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

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