Files
anthropic-client/tests/AnthropicClient.Tests/Unit/Models/UsageTests.cs
T

47 lines
1.1 KiB
C#
Raw Normal View History

2024-06-27 23:26:53 -05:00
namespace AnthropicClient.Tests.Unit.Models;
2024-07-03 16:57:27 -05:00
public class UsageTests : SerializationTest
2024-06-27 23:26:53 -05:00
{
[Fact]
public void Constructor_WhenCalled_ShouldInitializeProperties()
{
var expectedInputTokens = 1;
var expectedOutputTokens = 2;
2024-07-03 16:57:27 -05:00
var usage = new Usage
2024-06-27 23:26:53 -05:00
{
InputTokens = expectedInputTokens,
OutputTokens = expectedOutputTokens
};
2024-07-03 16:57:27 -05:00
usage.InputTokens.Should().Be(expectedInputTokens);
usage.OutputTokens.Should().Be(expectedOutputTokens);
2024-06-27 23:26:53 -05:00
}
[Fact]
public void JsonSerialization_WhenCalled_ItShouldSerializeCorrectly()
{
var expectedJson = @"{ ""input_tokens"": 1, ""output_tokens"": 2 }";
2024-07-03 16:57:27 -05:00
var usage = new Usage
2024-06-27 23:26:53 -05:00
{
InputTokens = 1,
OutputTokens = 2
};
2024-07-03 16:57:27 -05:00
var actual = Serialize(usage);
2024-06-27 23:26:53 -05:00
JsonAssert.Equal(expectedJson, actual);
}
[Fact]
public void JsonDeserialization_WhenCalled_ItShouldDeserializeCorrectly()
{
var json = @"{ ""input_tokens"": 1, ""output_tokens"": 2 }";
2024-07-03 16:57:27 -05:00
var usage = Deserialize<Usage>(json);
2024-06-27 23:26:53 -05:00
2024-07-03 16:57:27 -05:00
usage!.InputTokens.Should().Be(1);
usage.OutputTokens.Should().Be(2);
2024-06-27 23:26:53 -05:00
}
}