diff --git a/backend/src/db.rs b/backend/src/db.rs index 69c5655..96a5931 100644 --- a/backend/src/db.rs +++ b/backend/src/db.rs @@ -1,4 +1,5 @@ pub mod devices; +pub mod notifications; use include_dir::{Dir, include_dir}; use lazy_static::lazy_static; diff --git a/backend/src/db/notifications.rs b/backend/src/db/notifications.rs index e69de29..a108551 100644 --- a/backend/src/db/notifications.rs +++ b/backend/src/db/notifications.rs @@ -0,0 +1,18 @@ +use crate::model; + +pub fn list() -> Vec { + unimplemented!("Not ready yet"); +} + +#[cfg(test)] +mod tests { + use super::*; + use crate::tests_common; + + #[tokio::test] + async fn list_default() { + tests_common::setup_database().await; + let notifications = list(); + assert_eq!(notifications.len(), 1); + } +} diff --git a/backend/src/main.rs b/backend/src/main.rs index c4222a3..248963c 100644 --- a/backend/src/main.rs +++ b/backend/src/main.rs @@ -10,6 +10,9 @@ mod scanner; mod settings; mod web_server; +#[cfg(test)] +mod tests_common; + #[tokio::main] async fn main() -> Result<(), String> { // Initialize logging diff --git a/backend/tests/common/mod.rs b/backend/src/tests_common.rs similarity index 79% rename from backend/tests/common/mod.rs rename to backend/src/tests_common.rs index 7179699..b4f02e5 100644 --- a/backend/tests/common/mod.rs +++ b/backend/src/tests_common.rs @@ -1,14 +1,10 @@ +use crate::db; use include_dir::{Dir, include_dir}; -use log::{debug, error}; -use rusqlite::Connection; use rusqlite_migration::Migrations; -use std::result::Result; use std::sync::LazyLock; use tokio::sync::Mutex; -use crate::settings; - -static TEST_MIGRATIONS_DIR: Dir = include_dir!("$CARGO_MANIFEST_DIR/tests/database_migrations"); +static TEST_MIGRATIONS_DIR: Dir = include_dir!("$CARGO_MANIFEST_DIR/tests_database_migrations"); // Define migrations. These are applied atomically. static TEST_MIGRATIONS: LazyLock> = @@ -21,8 +17,8 @@ pub async fn setup_database() { if *initialised { return; } - - let conn = db::init_db().unwrap(); + db::init_db().await.unwrap(); + let mut conn = db::get_db_connection(); TEST_MIGRATIONS.to_latest(&mut conn).unwrap(); *initialised = true; diff --git a/backend/tests/database_migrations/01-notifications/up.sql b/backend/tests_database_migrations/01-notifications/up.sql similarity index 100% rename from backend/tests/database_migrations/01-notifications/up.sql rename to backend/tests_database_migrations/01-notifications/up.sql