diff options
Diffstat (limited to 'tests/Agent.Core.Tests/PromptAndRuntimeTests.cs')
| -rw-r--r-- | tests/Agent.Core.Tests/PromptAndRuntimeTests.cs | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/tests/Agent.Core.Tests/PromptAndRuntimeTests.cs b/tests/Agent.Core.Tests/PromptAndRuntimeTests.cs index 5e682cd..27308ef 100644 --- a/tests/Agent.Core.Tests/PromptAndRuntimeTests.cs +++ b/tests/Agent.Core.Tests/PromptAndRuntimeTests.cs @@ -2,6 +2,7 @@ using Agent.Core.Ollama; using Agent.Core.Prompts; using Agent.Core.Runtime; using Agent.Core.Sessions; +using Agent.Core.Skills; using Agent.Core.Tasks; using Agent.Core.Tools; using System.Text.Json; @@ -13,12 +14,18 @@ public sealed class PromptAndRuntimeTests [Fact] public void Prompt_order_is_fixed_and_request_is_last() { + var availableSkills = new List<AgentSkill> + { + new("root", "test-skill", "A test skill.", "skill instructions") + }; IReadOnlyList<OllamaMessage> messages = PromptComposer.Compose(new PromptContext( - "fixed", "user system", "ja", ["skill"], "capability", "graph", "summary", + "fixed", "user system", "ja", availableSkills, [], "capability", "graph", "summary", [new ConversationMessage("user", "old"), new ConversationMessage("assistant", "reply")], "new request", ["image"])); - Assert.Equal(["fixed", "user system", "Respond in locale: ja.", "skill", "capability", "graph", "summary", "old", "reply", "new request"], messages.Select(x => x.Content)); + // Check that the skill catalog (name + description) is present, not the full instructions. + Assert.Contains(messages, m => m.Content.Contains("test-skill") && m.Content.Contains("A test skill.")); + Assert.DoesNotContain(messages, m => m.Content == "skill instructions"); Assert.Equal("system", messages[0].Role); Assert.Equal("user", messages[^1].Role); Assert.Equal(["image"], messages[^1].Images); |
