Struct testcontainers_modules::surrealdb::SurrealDb
source · pub struct SurrealDb { /* private fields */ }Available on crate feature
surrealdb only.Expand description
Module to work with SurrealDB inside of tests.
Starts an instance of SurrealDB.
This module is based on the official SurrealDB docker image.
Default user and password is root, and exposed port is 8000 (SURREALDB_PORT).
§Example
use testcontainers_modules::{surrealdb, testcontainers::runners::SyncRunner};
let surrealdb_instance = surrealdb::SurrealDb::default().start();
let connection_string = format!(
"127.0.0.1:{}",
surrealdb_instance.get_host_port_ipv4(surrealdb::SURREALDB_PORT)
);
let db: Surreal<Client> = Surreal::init();
db.connect::<Ws>(connection_string).await.expect("Failed to connect to SurrealDB");
Implementations§
source§impl SurrealDb
impl SurrealDb
sourcepub fn with_password(self, password: &str) -> Self
pub fn with_password(self, password: &str) -> Self
Sets the password for the SurrealDB instance.
sourcepub fn with_authentication(self, authentication: bool) -> Self
pub fn with_authentication(self, authentication: bool) -> Self
Sets authentication for the SurrealDB instance.
sourcepub fn with_strict(self, strict: bool) -> Self
pub fn with_strict(self, strict: bool) -> Self
Sets strict mode for the SurrealDB instance.
sourcepub fn with_all_capabilities(self, allow_all: bool) -> Self
pub fn with_all_capabilities(self, allow_all: bool) -> Self
Sets all capabilities for the SurrealDB instance.
Trait Implementations§
source§impl Image for SurrealDb
impl Image for SurrealDb
§type Args = SurrealDbArgs
type Args = SurrealDbArgs
A type representing the arguments for an Image. Read more
source§fn tag(&self) -> String
fn tag(&self) -> String
Implementations are encouraged to include a tag that will not change (i.e. NOT latest)
in order to prevent test code from randomly breaking because the underlying docker
suddenly changed.
source§fn ready_conditions(&self) -> Vec<WaitFor>
fn ready_conditions(&self) -> Vec<WaitFor>
Returns a list of conditions that need to be met before a started container is considered ready. Read more
source§fn env_vars(&self) -> Box<dyn Iterator<Item = (&String, &String)> + '_>
fn env_vars(&self) -> Box<dyn Iterator<Item = (&String, &String)> + '_>
There are a couple of things regarding the environment variables of images: Read more
source§fn expose_ports(&self) -> Vec<u16>
fn expose_ports(&self) -> Vec<u16>
Returns the ports that needs to be exposed when a container is created. Read more
source§fn mounts(&self) -> Box<dyn Iterator<Item = &Mount> + '_>
fn mounts(&self) -> Box<dyn Iterator<Item = &Mount> + '_>
There are a couple of things regarding the mounts of images: Read more
source§fn entrypoint(&self) -> Option<String>
fn entrypoint(&self) -> Option<String>
Returns the entrypoint this instance was created with.
source§fn exec_after_start(&self, cs: ContainerState) -> Vec<ExecCommand>
fn exec_after_start(&self, cs: ContainerState) -> Vec<ExecCommand>
Returns the commands that needs to be executed after a container is started i.e. commands
to be run in a running container. Read more
Auto Trait Implementations§
impl Freeze for SurrealDb
impl RefUnwindSafe for SurrealDb
impl Send for SurrealDb
impl Sync for SurrealDb
impl Unpin for SurrealDb
impl UnwindSafe for SurrealDb
Blanket Implementations§
source§impl<T, I> AsyncRunner<I> for T
impl<T, I> AsyncRunner<I> for T
source§fn start<'async_trait>(
self
) -> Pin<Box<dyn Future<Output = ContainerAsync<I>> + Send + 'async_trait>>where
T: 'async_trait,
fn start<'async_trait>(
self
) -> Pin<Box<dyn Future<Output = ContainerAsync<I>> + Send + 'async_trait>>where
T: 'async_trait,
Starts the container and returns an instance of
ContainerAsync.source§fn pull_image<'async_trait>(
self
) -> Pin<Box<dyn Future<Output = RunnableImage<I>> + Send + 'async_trait>>where
T: 'async_trait,
fn pull_image<'async_trait>(
self
) -> Pin<Box<dyn Future<Output = RunnableImage<I>> + Send + 'async_trait>>where
T: 'async_trait,
Pulls the image from the registry.
Useful if you want to pull the image before starting the container.
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> 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> IntoResult<T> for T
impl<T> IntoResult<T> for T
type Err = Infallible
fn into_result(self) -> Result<T, <T as IntoResult<T>>::Err>
source§impl<T, I> SyncRunner<I> for T
impl<T, I> SyncRunner<I> for T
source§fn pull_image(self) -> RunnableImage<I>
fn pull_image(self) -> RunnableImage<I>
Pulls the image from the registry.
Useful if you want to pull the image before starting the container.