Use ReadOnlyMemory<byte> for binary data to eliminate UTF-16 transcoding (#1070)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com> Co-authored-by: ericstj <8918108+ericstj@users.noreply.github.com> Co-authored-by: Eric StJohn <ericstj@microsoft.com>
This commit is contained in:
parent
a3ce9e9606
commit
80b1ad21d7
1 changed files with 400 additions and 103 deletions
|
|
@ -575,7 +575,7 @@ public partial class McpServerResourceTests
|
|||
return (IList<ResourceContents>)
|
||||
[
|
||||
new TextResourceContents { Text = "hello", Uri = "" },
|
||||
new BlobResourceContents { Blob = Convert.ToBase64String(new byte[] { 1, 2, 3 }), Uri = "" },
|
||||
BlobResourceContents.FromBytes((byte[])[1, 2, 3], ""),
|
||||
];
|
||||
}, new() { Name = "Test" });
|
||||
var result = await resource.ReadAsync(
|
||||
|
|
@ -584,7 +584,7 @@ public partial class McpServerResourceTests
|
|||
Assert.NotNull(result);
|
||||
Assert.Equal(2, result.Contents.Count);
|
||||
Assert.Equal("hello", ((TextResourceContents)result.Contents[0]).Text);
|
||||
Assert.Equal(Convert.ToBase64String(new byte[] { 1, 2, 3 }), ((BlobResourceContents)result.Contents[1]).Blob);
|
||||
Assert.Equal(Convert.ToBase64String(new byte[] { 1, 2, 3 }), System.Text.Encoding.UTF8.GetString(((BlobResourceContents)result.Contents[1]).Blob.ToArray()));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
|
|
@ -636,7 +636,7 @@ public partial class McpServerResourceTests
|
|||
TestContext.Current.CancellationToken);
|
||||
Assert.NotNull(result);
|
||||
Assert.Single(result.Contents);
|
||||
Assert.Equal(Convert.ToBase64String(new byte[] { 0, 1, 2 }), ((BlobResourceContents)result.Contents[0]).Blob);
|
||||
Assert.Equal(Convert.ToBase64String(new byte[] { 0, 1, 2 }), System.Text.Encoding.UTF8.GetString(((BlobResourceContents)result.Contents[0]).Blob.ToArray()));
|
||||
Assert.Equal("application/octet-stream", ((BlobResourceContents)result.Contents[0]).MimeType);
|
||||
}
|
||||
|
||||
|
|
@ -659,7 +659,7 @@ public partial class McpServerResourceTests
|
|||
Assert.NotNull(result);
|
||||
Assert.Equal(2, result.Contents.Count);
|
||||
Assert.Equal("hello!", ((TextResourceContents)result.Contents[0]).Text);
|
||||
Assert.Equal(Convert.ToBase64String(new byte[] { 4, 5, 6 }), ((BlobResourceContents)result.Contents[1]).Blob);
|
||||
Assert.Equal(Convert.ToBase64String(new byte[] { 4, 5, 6 }), System.Text.Encoding.UTF8.GetString(((BlobResourceContents)result.Contents[1]).Blob.ToArray()));
|
||||
Assert.Equal("application/json", ((BlobResourceContents)result.Contents[1]).MimeType);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue