Files
anthropic-client/tests/AnthropicClient.Tests/EndToEnd/AnthropicApiClientTests.cs
T

61 lines
1.6 KiB
C#
Raw Normal View History

2024-06-27 23:26:53 -05:00
namespace AnthropicClient.Tests.EndToEnd;
public class ClientTests(
HttpClientFixture httpClientFixture,
ConfigurationFixture configFixture
) : EndToEndTest(httpClientFixture, configFixture)
{
[Fact]
public async Task CreateChatMessage_WhenCalled_ItShouldReturnChatResponse()
2024-06-27 23:26:53 -05:00
{
var request = new ChatMessageRequest(
model: AnthropicModels.Claude3Haiku,
messages: [new(MessageRole.User, [new TextContent("Hello!")])]
);
var result = await _client.CreateChatMessageAsync(request);
result.IsSuccess.Should().BeTrue();
result.Value.Should().BeOfType<ChatResponse>();
}
2024-06-28 10:54:00 -05:00
[Fact]
public async Task CreateChatMessage_WhenCalledWithStreamRequest_ItShouldReturnEvents()
2024-06-28 10:54:00 -05:00
{
var request = new StreamChatMessageRequest(
model: AnthropicModels.Claude3Haiku,
messages: [new(MessageRole.User, [new TextContent("Hello!")])]
);
var response = _client.CreateChatMessageAsync(request);
var events = new List<AnthropicEvent>();
await foreach (var e in response)
{
events.Add(e);
}
events.Should().NotBeEmpty();
}
[Fact]
public async Task CreateChatMessage_WhenCalledWithStreamRequest_ItShouldYieldAMessageCompleteEvent()
{
var request = new StreamChatMessageRequest(
model: AnthropicModels.Claude3Haiku,
messages: [new(MessageRole.User, [new TextContent("Hello!")])]
);
var response = _client.CreateChatMessageAsync(request);
await foreach (var e in response)
{
if (e.Data is MessageCompleteEventData messageCompleteData)
{
messageCompleteData.Message.Should().NotBeNull();
break;
}
}
}
2024-06-27 23:26:53 -05:00
}