Fix CreateMessageRule.Role to be of type Role (#264)
This commit is contained in:
parent
77871c5aac
commit
45dcfe07ca
11 changed files with 13 additions and 13 deletions
|
|
@ -926,7 +926,7 @@ public static class McpClientExtensions
|
|||
{
|
||||
Content = content,
|
||||
Model = chatResponse.ModelId ?? "unknown",
|
||||
Role = lastMessage?.Role == ChatRole.User ? "user" : "assistant",
|
||||
Role = lastMessage?.Role == ChatRole.User ? Role.User : Role.Assistant,
|
||||
StopReason = chatResponse.FinishReason == ChatFinishReason.Length ? "maxTokens" : "endTurn",
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -50,5 +50,5 @@ public class CreateMessageResult
|
|||
/// Gets or sets the role of the user who generated the message.
|
||||
/// </summary>
|
||||
[JsonPropertyName("role")]
|
||||
public required string Role { get; init; }
|
||||
public required Role Role { get; init; }
|
||||
}
|
||||
|
|
|
|||
|
|
@ -142,7 +142,7 @@ public static class McpServerExtensions
|
|||
ModelPreferences = modelPreferences,
|
||||
}, cancellationToken).ConfigureAwait(false);
|
||||
|
||||
return new(new ChatMessage(new(result.Role), [result.Content.ToAIContent()]))
|
||||
return new(new ChatMessage(result.Role is Role.User ? ChatRole.User : ChatRole.Assistant, [result.Content.ToAIContent()]))
|
||||
{
|
||||
ModelId = result.Model,
|
||||
FinishReason = result.StopReason switch
|
||||
|
|
|
|||
|
|
@ -219,7 +219,7 @@ public class SseServerIntegrationTests : LoggedTest, IClassFixture<SseServerInte
|
|||
return new CreateMessageResult
|
||||
{
|
||||
Model = "test-model",
|
||||
Role = "assistant",
|
||||
Role = Role.Assistant,
|
||||
Content = new Content
|
||||
{
|
||||
Type = "text",
|
||||
|
|
|
|||
|
|
@ -72,7 +72,7 @@ public class TestServerTransport : ITransport
|
|||
await WriteMessageAsync(new JsonRpcResponse
|
||||
{
|
||||
Id = request.Id,
|
||||
Result = JsonSerializer.SerializeToNode(new CreateMessageResult { Content = new(), Model = "model", Role = "role" }),
|
||||
Result = JsonSerializer.SerializeToNode(new CreateMessageResult { Content = new(), Model = "model", Role = Role.Assistant }),
|
||||
}, cancellationToken);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -84,7 +84,7 @@ public class McpClientExtensionsTests : ClientServerTestBase
|
|||
Assert.NotNull(result);
|
||||
Assert.Equal("Hello, World!", result.Content.Text);
|
||||
Assert.Equal("test-model", result.Model);
|
||||
Assert.Equal("assistant", result.Role);
|
||||
Assert.Equal(Role.Assistant, result.Role);
|
||||
Assert.Equal("endTurn", result.StopReason);
|
||||
}
|
||||
|
||||
|
|
@ -139,7 +139,7 @@ public class McpClientExtensionsTests : ClientServerTestBase
|
|||
Assert.NotNull(result);
|
||||
Assert.Equal(expectedData, result.Content.Data);
|
||||
Assert.Equal("test-model", result.Model);
|
||||
Assert.Equal("assistant", result.Role);
|
||||
Assert.Equal(Role.Assistant, result.Role);
|
||||
Assert.Equal("endTurn", result.StopReason);
|
||||
}
|
||||
|
||||
|
|
@ -201,7 +201,7 @@ public class McpClientExtensionsTests : ClientServerTestBase
|
|||
// Assert
|
||||
Assert.NotNull(result);
|
||||
Assert.Equal("test-model", result.Model);
|
||||
Assert.Equal(ChatRole.Assistant.ToString(), result.Role);
|
||||
Assert.Equal(Role.Assistant, result.Role);
|
||||
Assert.Equal("endTurn", result.StopReason);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -44,7 +44,7 @@ public class McpClientFactoryTests
|
|||
new CreateMessageResult {
|
||||
Content = new Content { Text = "result" },
|
||||
Model = "test-model",
|
||||
Role = "test-role",
|
||||
Role = Role.User,
|
||||
StopReason = "endTurn"
|
||||
}),
|
||||
},
|
||||
|
|
|
|||
|
|
@ -374,7 +374,7 @@ public class ClientIntegrationTests : LoggedTest, IClassFixture<ClientIntegratio
|
|||
return Task.FromResult(new CreateMessageResult
|
||||
{
|
||||
Model = "test-model",
|
||||
Role = "assistant",
|
||||
Role = Role.Assistant,
|
||||
Content = new Content
|
||||
{
|
||||
Type = "text",
|
||||
|
|
|
|||
|
|
@ -83,7 +83,7 @@ public class DockerEverythingServerTests(ITestOutputHelper testOutputHelper) : L
|
|||
return Task.FromResult(new CreateMessageResult
|
||||
{
|
||||
Model = "test-model",
|
||||
Role = "assistant",
|
||||
Role = Role.Assistant,
|
||||
Content = new Content
|
||||
{
|
||||
Type = "text",
|
||||
|
|
|
|||
|
|
@ -601,7 +601,7 @@ public class McpServerTests : LoggedTest
|
|||
{
|
||||
Content = new() { Text = "The Eiffel Tower.", Type = "text" },
|
||||
Model = "amazingmodel",
|
||||
Role = "assistant",
|
||||
Role = Role.Assistant,
|
||||
StopReason = "endTurn",
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -72,7 +72,7 @@ public class TestServerTransport : ITransport
|
|||
await WriteMessageAsync(new JsonRpcResponse
|
||||
{
|
||||
Id = request.Id,
|
||||
Result = JsonSerializer.SerializeToNode(new CreateMessageResult { Content = new(), Model = "model", Role = "role" }),
|
||||
Result = JsonSerializer.SerializeToNode(new CreateMessageResult { Content = new(), Model = "model", Role = Role.User }),
|
||||
}, cancellationToken);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue