include-postgres-sql 0.2.2

A Yesql inspired macro for using PostgreSQL SQL in Rust
Documentation
#[cfg(feature = "tokio")]
mod test {
    use futures_util::{pin_mut, TryStreamExt};
    use include_postgres_sql::{impl_sql, include_sql};
    use tokio_postgres::{Config, NoTls};

    include_sql!("tests/sql/query_no_args_into_rows.sql");

    #[tokio::test]
    async fn impl_method_without_params() -> Result<(), tokio_postgres::Error> {
        let (db, conn) = Config::new()
            .host("localhost")
            .user("postgres")
            .dbname("chinook")
            .connect(NoTls).await?;

        tokio::spawn(async move {
            if let Err(e) = conn.await {
                eprintln!("connection error: {}", e);
            }
        });

        let mut row_num = 0;
        let rows = db.get_top_artists().await?;
        pin_mut!(rows);
        while let Some(row) = rows.try_next().await? {
            let artist_name : &str = row.try_get("artist_name")?;
            let num_albums  :  i64 = row.try_get("num_albums")?;

            row_num += 1;
            match row_num {
                1 => {
                    assert_eq!(artist_name, "Iron Maiden");
                    assert_eq!(num_albums, 21);
                }
                2 => {
                    assert_eq!(artist_name, "Led Zeppelin");
                    assert_eq!(num_albums, 14);
                }
                3 => {
                    assert_eq!(artist_name, "Deep Purple");
                    assert_eq!(num_albums, 11);
                }
                _ => {
                    panic!("unexpected row");
                }
            }
        }

        Ok(())
    }
}