mirror of
https://github.com/microsoft/agent-framework.git
synced 2026-06-16 21:04:09 +08:00
merge with latest main
This commit is contained in:
@@ -15,7 +15,7 @@ public sealed class DurableAgentSessionTests
|
||||
JsonElement serializedSession = session.Serialize();
|
||||
|
||||
// Expected format: "{\"sessionId\":\"@dafx-test-agent@<random-key>\"}"
|
||||
string expectedSerializedSession = $"{{\"sessionId\":\"@dafx-{sessionId.Name}@{sessionId.Key}\"}}";
|
||||
string expectedSerializedSession = $"{{\"sessionId\":\"@dafx-{sessionId.Name}@{sessionId.Key}\",\"stateBag\":{{}}}}";
|
||||
Assert.Equal(expectedSerializedSession, serializedSession.ToString());
|
||||
|
||||
DurableAgentSession deserializedSession = DurableAgentSession.Deserialize(serializedSession);
|
||||
@@ -33,11 +33,47 @@ public sealed class DurableAgentSessionTests
|
||||
string serializedSession = JsonSerializer.Serialize(session, typeof(DurableAgentSession));
|
||||
|
||||
// Expected format: "{\"sessionId\":\"@dafx-test-agent@<random-key>\"}"
|
||||
string expectedSerializedSession = $"{{\"sessionId\":\"@dafx-{sessionId.Name}@{sessionId.Key}\"}}";
|
||||
string expectedSerializedSession = $"{{\"sessionId\":\"@dafx-{sessionId.Name}@{sessionId.Key}\",\"stateBag\":{{}}}}";
|
||||
Assert.Equal(expectedSerializedSession, serializedSession);
|
||||
|
||||
DurableAgentSession? deserializedSession = JsonSerializer.Deserialize<DurableAgentSession>(serializedSession);
|
||||
Assert.NotNull(deserializedSession);
|
||||
Assert.Equal(sessionId, deserializedSession.SessionId);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void BuiltInSerialization_RoundTrip_PreservesStateBag()
|
||||
{
|
||||
// Arrange
|
||||
AgentSessionId sessionId = AgentSessionId.WithRandomKey("test-agent");
|
||||
DurableAgentSession session = new(sessionId);
|
||||
session.StateBag.SetValue("durableKey", "durableValue");
|
||||
|
||||
// Act
|
||||
JsonElement serializedSession = session.Serialize();
|
||||
DurableAgentSession deserializedSession = DurableAgentSession.Deserialize(serializedSession);
|
||||
|
||||
// Assert
|
||||
Assert.Equal(sessionId, deserializedSession.SessionId);
|
||||
Assert.True(deserializedSession.StateBag.TryGetValue<string>("durableKey", out var value));
|
||||
Assert.Equal("durableValue", value);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void STJSerialization_RoundTrip_PreservesStateBag()
|
||||
{
|
||||
// Arrange
|
||||
AgentSessionId sessionId = AgentSessionId.WithRandomKey("test-agent");
|
||||
DurableAgentSession session = new(sessionId);
|
||||
session.StateBag.SetValue("stjKey", "stjValue");
|
||||
|
||||
// Act
|
||||
string serializedSession = JsonSerializer.Serialize(session, typeof(DurableAgentSession));
|
||||
DurableAgentSession? deserializedSession = JsonSerializer.Deserialize<DurableAgentSession>(serializedSession);
|
||||
|
||||
// Assert
|
||||
Assert.NotNull(deserializedSession);
|
||||
Assert.True(deserializedSession.StateBag.TryGetValue<string>("stjKey", out var value));
|
||||
Assert.Equal("stjValue", value);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user