diff --git a/src/main.rs b/src/main.rs index 0060d97..55da3e9 100644 --- a/src/main.rs +++ b/src/main.rs @@ -28,9 +28,6 @@ use simplelog::{LevelFilter, SimpleLogger, TermLogger, TerminalMode}; use std::path::Path; use std::sync::Arc; -mod api; -#[cfg(test)] -mod api_tests; mod config; mod db; mod ddns; @@ -38,17 +35,13 @@ mod index; mod lastfm; mod metadata; mod playlist; -mod serve; -mod server; -mod swagger; -#[cfg(test)] -mod test; +mod service; + mod thumbnails; mod ui; mod user; mod utils; mod vfs; -mod web; fn log_config() -> simplelog::Config { simplelog::ConfigBuilder::new() @@ -227,7 +220,7 @@ fn main() -> Result<()> { .parse() .with_context(|| "Invalid port number")?; - let server = server::get_server( + let server = service::server::get_server( port, Some(auth_secret.as_slice()), &api_url, diff --git a/src/service/mod.rs b/src/service/mod.rs new file mode 100644 index 0000000..5a2fb6e --- /dev/null +++ b/src/service/mod.rs @@ -0,0 +1,3 @@ +mod rocket; + +pub use self::rocket::*; diff --git a/src/api.rs b/src/service/rocket/api.rs similarity index 99% rename from src/api.rs rename to src/service/rocket/api.rs index 1546150..64c7b3d 100644 --- a/src/api.rs +++ b/src/service/rocket/api.rs @@ -14,12 +14,12 @@ use std::sync::Arc; use thiserror::Error; use time::Duration; +use super::serve; use crate::config::{self, Config, Preferences}; use crate::db::DB; use crate::index; use crate::lastfm; use crate::playlist; -use crate::serve; use crate::thumbnails; use crate::user; use crate::utils; diff --git a/src/api_tests.rs b/src/service/rocket/api_tests.rs similarity index 99% rename from src/api_tests.rs rename to src/service/rocket/api_tests.rs index f39f6a1..f792563 100644 --- a/src/api_tests.rs +++ b/src/service/rocket/api_tests.rs @@ -4,13 +4,13 @@ use rocket::http::Status; use rocket::local::Client; use std::{thread, time}; -use crate::api; +use super::api; use crate::config; use crate::ddns; use crate::index; use crate::vfs; -use crate::test::get_test_environment; +use super::test::get_test_environment; const TEST_USERNAME: &str = "test_user"; const TEST_PASSWORD: &str = "test_password"; diff --git a/src/service/rocket/mod.rs b/src/service/rocket/mod.rs new file mode 100644 index 0000000..d335ee8 --- /dev/null +++ b/src/service/rocket/mod.rs @@ -0,0 +1,13 @@ +mod api; +mod serve; + +pub mod server; + +#[cfg(test)] +mod api_tests; +#[cfg(test)] +mod swagger; +#[cfg(test)] +mod test; +#[cfg(test)] +mod web; diff --git a/src/serve.rs b/src/service/rocket/serve.rs similarity index 100% rename from src/serve.rs rename to src/service/rocket/serve.rs diff --git a/src/server.rs b/src/service/rocket/server.rs similarity index 95% rename from src/server.rs rename to src/service/rocket/server.rs index 2898ae9..771b5f1 100644 --- a/src/server.rs +++ b/src/service/rocket/server.rs @@ -5,6 +5,7 @@ use rocket_contrib::serve::StaticFiles; use std::path::PathBuf; use std::sync::Arc; +use super::api; use crate::db::DB; use crate::index::CommandSender; @@ -36,7 +37,7 @@ pub fn get_server( Ok(rocket::custom(config) .manage(db) .manage(command_sender) - .mount(&api_url, crate::api::get_routes()) + .mount(&api_url, api::get_routes()) .mount( &swagger_url, StaticFiles::from(swagger_dir_path).rank(swagger_routes_rank), diff --git a/src/swagger.rs b/src/service/rocket/swagger.rs similarity index 86% rename from src/swagger.rs rename to src/service/rocket/swagger.rs index 8183c72..6eeafe5 100644 --- a/src/swagger.rs +++ b/src/service/rocket/swagger.rs @@ -1,6 +1,7 @@ +use super::test::get_test_environment; + #[test] fn test_index() { - use crate::test::get_test_environment; use rocket::http::Status; let env = get_test_environment("swagger_index.sqlite"); let client = &env.client; @@ -10,7 +11,6 @@ fn test_index() { #[test] fn test_index_with_trailing_slash() { - use crate::test::get_test_environment; use rocket::http::Status; let env = get_test_environment("swagger_index_with_trailing_slash.sqlite"); let client = &env.client; diff --git a/src/test.rs b/src/service/rocket/test.rs similarity index 98% rename from src/test.rs rename to src/service/rocket/test.rs index 72487ae..2705822 100644 --- a/src/test.rs +++ b/src/service/rocket/test.rs @@ -5,9 +5,9 @@ use std::ops::Deref; use std::path::PathBuf; use std::sync::Arc; +use super::server; use crate::db::DB; use crate::index; -use crate::server; pub struct TestEnvironment { pub client: Client, diff --git a/src/web.rs b/src/service/rocket/web.rs similarity index 74% rename from src/web.rs rename to src/service/rocket/web.rs index ffe7a3f..a9a46cf 100644 --- a/src/web.rs +++ b/src/service/rocket/web.rs @@ -1,8 +1,8 @@ +use super::test::get_test_environment; +use rocket::http::Status; + #[test] fn test_index() { - use crate::test::get_test_environment; - use rocket::http::Status; - let env = get_test_environment("web_index.sqlite"); let client = &env.client; let response = client.get("/").dispatch();