Files
khadhroony-solana-project/crates/ksp-app-config-desk/unit_tests/secrets.rs
2026-08-20 09:24:10 +02:00

33 lines
1.4 KiB
Rust

// file: crates/ksp-app-config-desk/unit_tests/secrets.rs
// version: 2
#[test]
fn reveal_policy_accepts_only_secret_names_and_supported_sources() {
let effective = super::validate_request("KSP_SECRET_TEST_VALUE", "effective");
assert!(effective.is_ok());
if let std::result::Result::Ok(source) = effective {
assert_eq!(source.label(), "effective");
}
let dotenv = super::validate_request("KSPB_SECRET_TEST_VALUE", "dotenv");
assert!(dotenv.is_ok());
if let std::result::Result::Ok(source) = dotenv {
assert_eq!(source.label(), "dotenv");
}
assert!(super::validate_request("KSP_PUBLIC_TEST_VALUE", "effective").is_err());
assert!(super::validate_request("KSP_TEST_VALUE", "effective").is_err());
assert!(super::validate_request("EXTERNAL_SECRET_VALUE", "effective").is_err());
assert!(super::validate_request("KSP_SECRET_TEST_VALUE", "unknown").is_err());
}
#[test]
fn reveal_response_type_does_not_require_debug_or_clone_contracts() {
let response = crate::SecretRevealResponseDto {
variable_name: "KSP_SECRET_TEST_VALUE".to_owned(),
source: "dotenv".to_owned(),
value: std::option::Option::Some("secret-canary".to_owned()),
};
assert_eq!(response.variable_name, "KSP_SECRET_TEST_VALUE");
assert_eq!(response.source, "dotenv");
assert_eq!(response.value.as_deref(), std::option::Option::Some("secret-canary"));
}