test · Rust

Mcp Env Interp

crates/vak-core/tests/mcp_env_interp.rs
Raw
987 B36 linesSnapshot ed4ab258
  1. 1#![allow(clippy::unwrap_used, clippy::expect_used, clippy::panic)]
  2. 2
  3. 3// ${VAR} interpolation for MCP server env values resolves through the same
  4. 4// secret path as provider keys; unresolved references fail closed.
  5. 5
  6. 6#[test]
  7. 7fn literal_values_pass_through() {
  8. 8 assert_eq!(
  9. 9 vak_core::interpolate_env_var("plain"),
  10. 10 Some("plain".to_string())
  11. 11 );
  12. 12}
  13. 13
  14. 14#[test]
  15. 15fn resolves_from_runtime_override() {
  16. 16 vak_config::set_override("TEST_MCP_KEY", "abc123");
  17. 17 assert_eq!(
  18. 18 vak_core::interpolate_env_var("${TEST_MCP_KEY}"),
  19. 19 Some("abc123".into())
  20. 20 );
  21. 21 assert_eq!(
  22. 22 vak_core::interpolate_env_var("Bearer ${TEST_MCP_KEY}"),
  23. 23 Some("Bearer abc123".into())
  24. 24 );
  25. 25 vak_config::clear_override("TEST_MCP_KEY");
  26. 26}
  27. 27
  28. 28#[test]
  29. 29fn unresolved_reference_fails_closed() {
  30. 30 vak_config::forget_dotenv_var("DEFINITELY_UNSET_MCP_VAR_9");
  31. 31 assert_eq!(
  32. 32 vak_core::interpolate_env_var("${DEFINITELY_UNSET_MCP_VAR_9}"),
  33. 33 None::<String>
  34. 34 );
  35. 35}
  36. 36