diff --git a/src/database/connection.rs b/src/database/connection.rs index 6a39b240..995dde9d 100644 --- a/src/database/connection.rs +++ b/src/database/connection.rs @@ -1,6 +1,7 @@ use crate::{error::*, ExecResult, QueryResult, Statement, StatementBuilder}; use sea_query::{MysqlQueryBuilder, PostgresQueryBuilder, QueryBuilder, SqliteQueryBuilder}; +#[cfg_attr(not(feature = "mock"), derive(Clone))] pub enum DatabaseConnection { #[cfg(feature = "sqlx-mysql")] SqlxMySqlPoolConnection(crate::SqlxMySqlPoolConnection), @@ -143,3 +144,15 @@ impl DbBackend { } } } + +#[cfg(test)] +mod tests { + use crate::DatabaseConnection; + + #[test] + fn assert_database_connection_traits() { + fn assert_send_sync() {} + + assert_send_sync::(); + } +} diff --git a/src/driver/sqlx_mysql.rs b/src/driver/sqlx_mysql.rs index e91df037..be590b6e 100644 --- a/src/driver/sqlx_mysql.rs +++ b/src/driver/sqlx_mysql.rs @@ -13,7 +13,7 @@ use super::sqlx_common::*; #[derive(Debug)] pub struct SqlxMySqlConnector; -#[derive(Debug)] +#[derive(Debug, Clone)] pub struct SqlxMySqlPoolConnection { pool: MySqlPool, } diff --git a/src/driver/sqlx_postgres.rs b/src/driver/sqlx_postgres.rs index 086dc995..e7b9032a 100644 --- a/src/driver/sqlx_postgres.rs +++ b/src/driver/sqlx_postgres.rs @@ -13,7 +13,7 @@ use super::sqlx_common::*; #[derive(Debug)] pub struct SqlxPostgresConnector; -#[derive(Debug)] +#[derive(Debug, Clone)] pub struct SqlxPostgresPoolConnection { pool: PgPool, } diff --git a/src/driver/sqlx_sqlite.rs b/src/driver/sqlx_sqlite.rs index 5fa4bdcd..bd6f0399 100644 --- a/src/driver/sqlx_sqlite.rs +++ b/src/driver/sqlx_sqlite.rs @@ -13,7 +13,7 @@ use super::sqlx_common::*; #[derive(Debug)] pub struct SqlxSqliteConnector; -#[derive(Debug)] +#[derive(Debug, Clone)] pub struct SqlxSqlitePoolConnection { pool: SqlitePool, }