52 lines
2.6 KiB
Rust
52 lines
2.6 KiB
Rust
// file: crates/ksp-app-config-desk/unit_tests/logging_test.rs
|
|
// version: 1
|
|
|
|
use super::{LoggingTestLevel, LoggingTestTarget};
|
|
|
|
#[test]
|
|
fn controlled_logging_test_levels_include_all_five_levels_and_batch_mode() {
|
|
assert!(matches!(super::parse_level("trace"), std::result::Result::Ok(LoggingTestLevel::Trace)));
|
|
assert!(matches!(super::parse_level("debug"), std::result::Result::Ok(LoggingTestLevel::Debug)));
|
|
assert!(matches!(super::parse_level("info"), std::result::Result::Ok(LoggingTestLevel::Info)));
|
|
assert!(matches!(super::parse_level("warn"), std::result::Result::Ok(LoggingTestLevel::Warn)));
|
|
assert!(matches!(super::parse_level("error"), std::result::Result::Ok(LoggingTestLevel::Error)));
|
|
assert!(matches!(super::parse_level("all"), std::result::Result::Ok(LoggingTestLevel::All)));
|
|
assert!(super::parse_level("fatal").is_err());
|
|
}
|
|
|
|
#[test]
|
|
fn controlled_logging_test_targets_are_static_ksp_targets() {
|
|
assert!(matches!(super::parse_target("app"), std::result::Result::Ok(LoggingTestTarget::App)));
|
|
assert!(matches!(super::parse_target("logging_test"), std::result::Result::Ok(LoggingTestTarget::Dedicated)));
|
|
assert_eq!(super::target_value(LoggingTestTarget::App), crate::TRACING_TARGET);
|
|
assert_eq!(super::target_value(LoggingTestTarget::Dedicated), crate::TRACING_TARGET_LOGGING_TEST);
|
|
assert!(super::parse_target("external").is_err());
|
|
}
|
|
|
|
#[test]
|
|
fn logging_test_domain_modes_cover_absent_known_and_bounded_custom_values() {
|
|
let absent = super::resolve_domain("absent", "ignored");
|
|
assert!(matches!(absent, std::result::Result::Ok(std::option::Option::None)));
|
|
let known = super::resolve_domain("known", crate::TRACING_DOMAIN_LOGGING_TEST);
|
|
assert!(matches!(
|
|
known.as_ref(),
|
|
std::result::Result::Ok(std::option::Option::Some(value)) if value == crate::TRACING_DOMAIN_LOGGING_TEST
|
|
));
|
|
let custom = super::resolve_domain("custom", "custom.route_1-test");
|
|
assert!(matches!(
|
|
custom.as_ref(),
|
|
std::result::Result::Ok(std::option::Option::Some(value)) if value == "custom.route_1-test"
|
|
));
|
|
assert!(super::resolve_domain("custom", "custom route").is_err());
|
|
assert!(super::resolve_domain("custom", "").is_err());
|
|
assert!(super::resolve_domain("known", "unknown.domain").is_err());
|
|
}
|
|
|
|
#[test]
|
|
fn logging_test_message_is_required_and_bounded() {
|
|
let message = super::validate_message(" test ");
|
|
assert!(matches!(message, std::result::Result::Ok("test")));
|
|
assert!(super::validate_message(" ").is_err());
|
|
assert!(super::validate_message("x".repeat(501).as_str()).is_err());
|
|
}
|