#postgresql #sqlx #testing #database #connection-pool

sqlx-db-tester

A simple tool to test sqlx with postgres. It will automatically create a database and drop it after the test.

15 releases

0.5.0 Sep 25, 2024
0.4.2 Apr 29, 2024
0.4.0 Dec 18, 2023
0.3.6 Feb 14, 2023
0.1.1 Oct 19, 2022

#541 in Development tools

Download history 109/week @ 2024-08-23 145/week @ 2024-08-30 114/week @ 2024-09-06 116/week @ 2024-09-13 264/week @ 2024-09-20 207/week @ 2024-09-27 94/week @ 2024-10-04 95/week @ 2024-10-11 151/week @ 2024-10-18 120/week @ 2024-10-25 148/week @ 2024-11-01 59/week @ 2024-11-08 92/week @ 2024-11-15 132/week @ 2024-11-22 155/week @ 2024-11-29 239/week @ 2024-12-06

627 downloads per month
Used in db-schema

MIT license

17KB
381 lines

sqlx-db-tester

This a tool to test sqlx with postgres. It only supports tokio runtime at this moment.

How to use it

You should first create a TestPg data structure in your tests. It will automatically create a database and a connection pool for you. You could then get the connection string or connection pool from it to use in your own code. When TestPg gets dropped, it will automatically drop the database.

#[tokio::test]
fn some_awesom_test() {
    let tdb = TestPg::new(
            "postgres://postgres:postgres@localhost:5432".to_string(),
            std::path::Path::new("./migrations"),
        )
    let pool = tdb.get_pool().await;
    // do something with the pool

    // when tdb gets dropped, the database will be dropped
}

Have fun with this crate!

License

This project is distributed under the terms of MIT.

See LICENSE for details.

Copyright 2022-2024 Tyr Chen

Dependencies

~18–30MB
~455K SLoC