From b8598595484739027bdd83cd8cdfe122ad3cb9cf Mon Sep 17 00:00:00 2001 From: Stevan Freeborn <65925598+StevanFreeborn@users.noreply.github.com> Date: Mon, 14 Jul 2025 23:20:02 -0500 Subject: [PATCH] feat: add missing model constants --- src/AnthropicClient/Models/AnthropicModels.cs | 30 ++++++++++ .../Unit/Models/AnthropicModelsTests.cs | 60 +++++++++++++++++++ 2 files changed, 90 insertions(+) diff --git a/src/AnthropicClient/Models/AnthropicModels.cs b/src/AnthropicClient/Models/AnthropicModels.cs index 158a5a9..c9b7bb0 100644 --- a/src/AnthropicClient/Models/AnthropicModels.cs +++ b/src/AnthropicClient/Models/AnthropicModels.cs @@ -20,6 +20,16 @@ public static class AnthropicModels /// public const string Claude3OpusLatest = "claude-3-opus-latest"; + /// + /// The Claude 4 Opus model. + /// + public const string ClaudeOpus420250514 = "claude-opus-4-20250514"; + + /// + /// The Claude 4 Opus model. + /// + public const string ClaudeOpus40 = "claude-opus-4-0"; + /// /// The Claude 3 Sonnet model. /// @@ -50,6 +60,26 @@ public static class AnthropicModels /// public const string Claude35SonnetLatest = "claude-3-5-sonnet-latest"; + /// + /// The Claude 3 Sonnet model + /// + public const string Claude37Sonnet20250219 = "claude-3-7-sonnet-20250219"; + + /// + /// The Claude 3 Sonnet model + /// + public const string Claude37SonnetLatest = "claude-3-7-sonnet-latest"; + + /// + /// The Claude 4 Sonnet model. + /// + public const string ClaudeSonnet420250514 = "claude-sonnet-4-20250514"; + + /// + /// The Claude 4 Sonnet model. + /// + public const string ClaudeSonnet40 = "claude-sonnet-4-0"; + /// /// The Claude 3 Haiku model. /// diff --git a/tests/AnthropicClient.Tests/Unit/Models/AnthropicModelsTests.cs b/tests/AnthropicClient.Tests/Unit/Models/AnthropicModelsTests.cs index 3b2343a..d9eac11 100644 --- a/tests/AnthropicClient.Tests/Unit/Models/AnthropicModelsTests.cs +++ b/tests/AnthropicClient.Tests/Unit/Models/AnthropicModelsTests.cs @@ -131,4 +131,64 @@ public class AnthropicModelsTests actual.Should().Be(expected); } + + [Fact] + public void Claude37Sonnet20250219_WhenCalled_ItShouldReturnExpectedValue() + { + var expected = "claude-3-7-sonnet-20250219"; + + var actual = AnthropicModels.Claude37Sonnet20250219; + + actual.Should().Be(expected); + } + + [Fact] + public void Claude37SonnetLatest_WhenCalled_ItShouldReturnExpectedValue() + { + var expected = "claude-3-7-sonnet-latest"; + + var actual = AnthropicModels.Claude37SonnetLatest; + + actual.Should().Be(expected); + } + + [Fact] + public void ClaudeSonnet420250514_WhenCalled_ItShouldReturnExpectedValue() + { + var expected = "claude-sonnet-4-20250514"; + + var actual = AnthropicModels.ClaudeSonnet420250514; + + actual.Should().Be(expected); + } + + [Fact] + public void ClaudeSonnet40_WhenCalled_ItShouldReturnExpectedValue() + { + var expected = "claude-sonnet-4-0"; + + var actual = AnthropicModels.ClaudeSonnet40; + + actual.Should().Be(expected); + } + + [Fact] + public void ClaudeOpus420250514_WhenCalled_ItShouldReturnExpectedValue() + { + var expected = "claude-opus-4-20250514"; + + var actual = AnthropicModels.ClaudeOpus420250514; + + actual.Should().Be(expected); + } + + [Fact] + public void ClaudeOpus40_WhenCalled_ItShouldReturnExpectedValue() + { + var expected = "claude-opus-4-0"; + + var actual = AnthropicModels.ClaudeOpus40; + + actual.Should().Be(expected); + } } \ No newline at end of file