feat: add model for DocumentContent and DocumentSource

This commit is contained in:
Stevan Freeborn
2024-11-21 13:43:21 -06:00
parent c4d4d8a15b
commit f3a7040cb9
5 changed files with 274 additions and 0 deletions
@@ -0,0 +1,49 @@
namespace AnthropicClient.Tests.Unit.Models;
public class DocumentSourceTests
{
[Fact]
public void Constructor_WhenCalledWithValidArguments_ItShouldSetProperties()
{
var mediaType = "application/pdf";
var data = "base64data";
var source = new DocumentSource(mediaType, data);
source.MediaType.Should().Be(mediaType);
source.Data.Should().Be(data);
}
[Fact]
public void Constructor_WhenCalledWithNullMediaType_ItShouldThrowArgumentNullException()
{
string? mediaType = null;
var data = "base64data";
var action = () => new DocumentSource(mediaType!, data);
action.Should().Throw<ArgumentNullException>();
}
[Fact]
public void Constructor_WhenCalledWithNullData_ItShouldThrowArgumentNullException()
{
var mediaType = "application/pdf";
string? data = null;
var action = () => new DocumentSource(mediaType, data!);
action.Should().Throw<ArgumentNullException>();
}
[Fact]
public void Constructor_WhenCalled_ItShouldHaveTypePropertySetToBase64()
{
var mediaType = "application/pdf";
var data = "base64data";
var source = new DocumentSource(mediaType, data);
source.Type.Should().Be("base64");
}
}