fix: throw exception when accessing result props incorrectly

This commit is contained in:
Stevan Freeborn
2024-07-06 11:55:47 -05:00
parent 1d352a6f95
commit c538a3eb8c
8 changed files with 116 additions and 26 deletions
@@ -0,0 +1,34 @@
namespace AnthropicClient.Tests.Unit.Models;
public class ToolCallResultTests
{
[Fact]
public void Success_WhenCalled_ItShouldReturnSuccessResult()
{
var value = "success";
var actual = ToolCallResult<string>.Success(value);
actual.IsSuccess.Should().BeTrue();
actual.IsFailure.Should().BeFalse();
actual.Value.Should().Be(value);
var action = () => { var _ = actual.Error; };
action.Should().Throw<InvalidOperationException>();
}
[Fact]
public void Failure_WhenCalled_ItShouldReturnFailureResult()
{
var error = new Exception();
var actual = ToolCallResult<string>.Failure(error);
actual.IsSuccess.Should().BeFalse();
actual.IsFailure.Should().BeTrue();
actual.Error.Should().Be(error);
var action = () => { var _ = actual.Value; };
action.Should().Throw<InvalidOperationException>();
}
}