use everruns_core::capabilities::{Capability, CapabilityStatus, SubagentCapability};
#[test]
fn test_subagent_capability_registration() {
let cap = SubagentCapability;
assert_eq!(cap.id(), "subagents");
assert_eq!(cap.name(), "Subagents");
assert_eq!(cap.status(), CapabilityStatus::Available);
assert!(cap.tools().is_empty());
assert!(cap.system_prompt_addition().is_some());
assert_eq!(cap.features(), vec!["subagents"]);
let prompt = cap.system_prompt_addition().unwrap();
assert!(
prompt.contains("Spawn subagents"),
"prompt should instruct spawning subagents, got: {prompt}"
);
assert!(prompt.contains("blueprint"));
}
#[test]
fn test_subagent_capability_metadata() {
let cap = SubagentCapability;
assert_eq!(cap.icon(), Some("git-branch"));
assert_eq!(cap.category(), Some("Core"));
assert_eq!(
cap.description(),
"Spawn and manage subagents for parallel task execution in isolated context windows."
);
}