Align x-mcp-header implementation with SEP-2243 spec clarifications (#1619)

Co-authored-by: Tarek Mahmoud Sayed <tarekms@ntdev.microsoft.com>
This commit is contained in:
Tarek Mahmoud Sayed 2026-06-05 15:45:08 -07:00 • committed by GitHub
commit ed19286a08
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -9,6 +9,9 @@ public class McpHeaderAttributeTests
[InlineData("TenantId")]
[InlineData("Priority")]
[InlineData("X-Custom")]
[InlineData("x!header")]
[InlineData("x#header")]
[InlineData("x~header")]
public void Constructor_ValidHeaderName_Succeeds(string name)
{
var attr = new McpHeaderAttribute(name);
@ -27,6 +30,23 @@ public class McpHeaderAttributeTests
Assert.Throws<ArgumentException>(() => new McpHeaderAttribute("Region:Primary"));
}
[Theory]
[InlineData("Region(1)")]
[InlineData("path/to")]
[InlineData("key=value")]
[InlineData("name@host")]
[InlineData("with,comma")]
[InlineData("with;semi")]
[InlineData("with[bracket")]
[InlineData("with{brace")]
[InlineData("with\"quote")]
[InlineData("with\\backslash")]
[InlineData("with?question")]
public void Constructor_NonTcharCharacter_Throws(string name)
{
Assert.Throws<ArgumentException>(() => new McpHeaderAttribute(name));
}
[Fact]
public void Constructor_NullName_Throws()
{