Crates.io | with_postgres_ready |
lib.rs | with_postgres_ready |
version | 0.1.1 |
source | src |
created_at | 2023-07-08 12:45:07.559027 |
updated_at | 2023-07-08 13:20:25.973259 |
description | Helper for running tests with a Postgres database in a Docker container that is ready to accept connections. |
homepage | |
repository | https://github.com/bondo/with-postgres-ready |
max_upload_size | |
id | 911452 |
size | 10,618 |
with_postgres_ready makes it easy to write tests that relies on a postgres database being ready to accept connections. It does this by starting a Docker container with postgres, polling the database until it is ready, and then executing the block.
To get a connection url with the default configuration:
use with_postgres_ready::*;
#[test_log::test]
fn it_can_use_defaults() {
with_postgres_ready(|url| async move {
// Connect to the database using the url.
});
}
To get more control, use the Runner
builder:
use with_postgres_ready::*;
#[test_log::test]
fn it_can_use_custom_connection_timeout() {
Runner::new().connection_timeout(Duration::from_secs(5)).run(|url| async move {
// Connect to the database using the url.
});
}