diff --git a/crates/store/src/lib.rs b/crates/store/src/lib.rs index 53ad487..36e9a50 100644 --- a/crates/store/src/lib.rs +++ b/crates/store/src/lib.rs @@ -11,6 +11,9 @@ mod secret; mod subscription_store; pub mod synctoken; +#[cfg(test)] +pub mod tests; + pub use addressbook_store::AddressbookStore; pub use calendar_store::CalendarStore; pub use combined_calendar_store::CombinedCalendarStore; diff --git a/crates/store/src/tests/mod.rs b/crates/store/src/tests/mod.rs new file mode 100644 index 0000000..e69de29 diff --git a/crates/store_sqlite/src/lib.rs b/crates/store_sqlite/src/lib.rs index 1f8d8ce..46d075d 100644 --- a/crates/store_sqlite/src/lib.rs +++ b/crates/store_sqlite/src/lib.rs @@ -8,6 +8,9 @@ pub mod error; pub mod principal_store; pub mod subscription_store; +#[cfg(test)] +pub mod tests; + #[derive(Debug, Clone, Serialize, sqlx::Type)] #[serde(rename_all = "kebab-case")] pub(crate) enum ChangeOperation { @@ -42,13 +45,3 @@ pub async fn create_db_pool(db_url: &str, migrate: bool) -> Result, } Ok(db) } - -pub async fn create_test_db() -> Result { - let db = SqlitePool::connect("sqlite::memory:").await?; - sqlx::migrate!("./migrations").run(&db).await?; - Ok(db) -} - -pub async fn create_test_store() -> Result { - Ok(SqliteStore::new(create_test_db().await?)) -} diff --git a/crates/store_sqlite/src/tests/mod.rs b/crates/store_sqlite/src/tests/mod.rs new file mode 100644 index 0000000..b0ec6d3 --- /dev/null +++ b/crates/store_sqlite/src/tests/mod.rs @@ -0,0 +1,13 @@ +use crate::SqliteStore; +use sqlx::SqlitePool; + +pub async fn create_test_db() -> Result { + let db = SqlitePool::connect("sqlite::memory:").await?; + sqlx::migrate!("./migrations").run(&db).await?; + Ok(db) +} + +#[tokio::test] +async fn test_create_store() { + SqliteStore::new(create_test_db().await.unwrap()); +}