#postgresql #ready #connection #testing #accept #url

with_postgres_ready

用于在Docker容器中运行Postgres数据库测试的辅助工具,该容器已准备好接受连接

2个版本

0.1.1 2023年7月8日
0.1.0 2023年7月8日

#2320数据库接口

MIT/Apache

11KB
175

with_postgres_ready

with_postgres_ready使编写依赖于Postgres数据库准备接受连接的测试变得容易。它是通过启动带有Postgres的Docker容器,轮询数据库直到其就绪,然后执行代码块来实现的。

示例

获取默认配置的连接URL

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.
    });
}

要获得更多控制,请使用Runner构建器

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.
    });
}

lib.rs:

with_postgres_ready使编写依赖于Postgres数据库准备接受连接的测试变得容易。它是通过启动带有Postgres的Docker容器,轮询数据库直到其就绪,然后执行代码块来实现的。

示例

获取默认配置的连接URL

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.
    });
}

要获得更多控制,请使用Runner构建器

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.
    });
}

依赖项

~12–23MB
~346K SLoC