From 03d890cd498e8ce55d9e86d38f0b0525c18ce61a Mon Sep 17 00:00:00 2001 From: Jason Volk Date: Thu, 11 Jul 2024 08:54:33 +0000 Subject: [PATCH] move admin tests into unit; fix Signed-off-by: Jason Volk --- src/admin/handler.rs | 1 - src/admin/mod.rs | 28 +--------------------------- src/admin/tests.rs | 26 ++++++++++++++++++++++++++ 3 files changed, 27 insertions(+), 28 deletions(-) create mode 100644 src/admin/tests.rs diff --git a/src/admin/handler.rs b/src/admin/handler.rs index 2d1f96b5..95c7ed41 100644 --- a/src/admin/handler.rs +++ b/src/admin/handler.rs @@ -24,7 +24,6 @@ use crate::{ }; pub(crate) const PAGE_SIZE: usize = 100; -#[cfg_attr(test, derive(Debug))] #[derive(Parser)] #[command(name = "admin", version = env!("CARGO_PKG_VERSION"))] pub(crate) enum AdminCommand { diff --git a/src/admin/mod.rs b/src/admin/mod.rs index 6a47bc74..14856811 100644 --- a/src/admin/mod.rs +++ b/src/admin/mod.rs @@ -9,6 +9,7 @@ pub(crate) mod media; pub(crate) mod query; pub(crate) mod room; pub(crate) mod server; +mod tests; pub(crate) mod user; pub(crate) mod utils; @@ -53,30 +54,3 @@ pub async fn fini() { .expect("locked for writing") .take(); } - -#[cfg(test)] -mod test { - use clap::Parser; - - use crate::handler::AdminCommand; - - #[test] - fn get_help_short() { get_help_inner("-h"); } - - #[test] - fn get_help_long() { get_help_inner("--help"); } - - #[test] - fn get_help_subcommand() { get_help_inner("help"); } - - fn get_help_inner(input: &str) { - let error = AdminCommand::try_parse_from(["argv[0] doesn't matter", input]) - .unwrap_err() - .to_string(); - - // Search for a handful of keywords that suggest the help printed properly - assert!(error.contains("Usage:")); - assert!(error.contains("Commands:")); - assert!(error.contains("Options:")); - } -} diff --git a/src/admin/tests.rs b/src/admin/tests.rs new file mode 100644 index 00000000..69ccd896 --- /dev/null +++ b/src/admin/tests.rs @@ -0,0 +1,26 @@ +#![cfg(test)] + +#[test] +fn get_help_short() { get_help_inner("-h"); } + +#[test] +fn get_help_long() { get_help_inner("--help"); } + +#[test] +fn get_help_subcommand() { get_help_inner("help"); } + +fn get_help_inner(input: &str) { + use clap::Parser; + + use crate::handler::AdminCommand; + + let Err(error) = AdminCommand::try_parse_from(["argv[0] doesn't matter", input]) else { + panic!("no error!"); + }; + + let error = error.to_string(); + // Search for a handful of keywords that suggest the help printed properly + assert!(error.contains("Usage:")); + assert!(error.contains("Commands:")); + assert!(error.contains("Options:")); +}