Update content according to latest spec (#513)

* Update content according to latest spec

* Add Title to a bunch of types

* Add _meta to lots of types

* Address feedback, more cleanup, fix NAOT test failure
This commit is contained in:
Stephen Toub 2025-06-16 19:39:41 -04:00 • committed by GitHub
commit 2bcff315f8
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -95,7 +95,7 @@ public abstract class HttpServerIntegrationTests : LoggedTest, IClassFixture<Sse
// assert
Assert.NotNull(result);
Assert.False(result.IsError);
var textContent = Assert.Single(result.Content, c => c.Type == "text");
var textContent = Assert.Single(result.Content.OfType<TextContentBlock>());
Assert.Equal("Echo: Hello MCP!", textContent.Text);
}
@ -119,9 +119,9 @@ public abstract class HttpServerIntegrationTests : LoggedTest, IClassFixture<Sse
Assert.False(result2.IsError);
Assert.False(result3.IsError);
var textContent1 = Assert.Single(result1.Content);
var textContent2 = Assert.Single(result2.Content);
var textContent3 = Assert.Single(result3.Content);
var textContent1 = Assert.Single(result1.Content.OfType<TextContentBlock>());
var textContent2 = Assert.Single(result2.Content.OfType<TextContentBlock>());
var textContent3 = Assert.Single(result3.Content.OfType<TextContentBlock>());
Assert.NotNull(textContent1.Text);
Assert.Equal(textContent1.Text, textContent2.Text);
@ -259,11 +259,7 @@ public abstract class HttpServerIntegrationTests : LoggedTest, IClassFixture<Sse
{
Model = "test-model",
Role = Role.Assistant,
Content = new Content
{
Type = "text",
Text = "Test response"
}
Content = new TextContentBlock { Text = "Test response" },
};
};
await using var client = await GetClientAsync(options);
@ -279,8 +275,7 @@ public abstract class HttpServerIntegrationTests : LoggedTest, IClassFixture<Sse
// assert
Assert.NotNull(result);
var textContent = Assert.Single(result.Content);
Assert.Equal("text", textContent.Type);
var textContent = Assert.Single(result.Content.OfType<TextContentBlock>());
Assert.False(string.IsNullOrEmpty(textContent.Text));
}
@ -304,7 +299,7 @@ public abstract class HttpServerIntegrationTests : LoggedTest, IClassFixture<Sse
Assert.NotNull(result);
Assert.False(result.IsError);
var textContent = Assert.Single(result.Content, c => c.Type == "text");
var textContent = Assert.Single(result.Content.OfType<TextContentBlock>());
Assert.Equal($"Echo: Hello MCP! {i}", textContent.Text);
}
}