mirror of
https://github.com/microsoft/agent-framework.git
synced 2026-06-16 21:04:09 +08:00
66fe1c957c
* Add AIContextProvider support * Address feedback. * Address PR comments. * Switch to valuetask and remove parallel calls for AIContextProvider * Remove Model from ModelInvokingAsync method name * Remove agent thread id again and remove it from context provider interface * Add AIContextProvider serialization support to AgentThread and update sample to show this feature * Address PR comments * Improve memory sample * Update sample comment. * Remove AggregateAIContextProvider for now since it makes too many assumptions. We can include it later as a sample if needed. * Update AIContextProviders to have an Invoked method instead of MessagesAddingAsync. * Remove unused using. * Address PR comments. * Address PR comment. * Update comment. * Update comment * Address PR comments.
59 lines
1.5 KiB
C#
59 lines
1.5 KiB
C#
// Copyright (c) Microsoft. All rights reserved.
|
|
|
|
using System.Collections.Generic;
|
|
|
|
namespace Microsoft.Extensions.AI.Agents.Abstractions.UnitTests;
|
|
|
|
/// <summary>
|
|
/// Unit tests for <see cref="AIContext"/>.
|
|
/// </summary>
|
|
public class AIContextTests
|
|
{
|
|
[Fact]
|
|
public void SetInstructionsRoundtrips()
|
|
{
|
|
var context = new AIContext
|
|
{
|
|
Instructions = "Test Instructions"
|
|
};
|
|
|
|
Assert.Equal("Test Instructions", context.Instructions);
|
|
}
|
|
|
|
[Fact]
|
|
public void SetMessagesRoundtrips()
|
|
{
|
|
var context = new AIContext
|
|
{
|
|
Messages = new List<ChatMessage>
|
|
{
|
|
new(ChatRole.User, "Hello"),
|
|
new(ChatRole.Assistant, "Hi there!")
|
|
}
|
|
};
|
|
|
|
Assert.NotNull(context.Messages);
|
|
Assert.Equal(2, context.Messages.Count);
|
|
Assert.Equal("Hello", context.Messages[0].Text);
|
|
Assert.Equal("Hi there!", context.Messages[1].Text);
|
|
}
|
|
|
|
[Fact]
|
|
public void SetAIFunctionsRoundtrips()
|
|
{
|
|
var context = new AIContext
|
|
{
|
|
Tools = new List<AITool>
|
|
{
|
|
AIFunctionFactory.Create(() => "Function1", "Function1", "Description1"),
|
|
AIFunctionFactory.Create(() => "Function2", "Function2", "Description2"),
|
|
}
|
|
};
|
|
|
|
Assert.NotNull(context.Tools);
|
|
Assert.Equal(2, context.Tools.Count);
|
|
Assert.Equal("Function1", context.Tools[0].Name);
|
|
Assert.Equal("Function2", context.Tools[1].Name);
|
|
}
|
|
}
|