Conversation
There was a problem hiding this comment.
Pull request overview
This PR adds support for unsigned scalar types (UnsignedByte, UnsignedInt, UnsignedLong, UnsignedShort) to the MCP (Model Context Protocol) adapter tests and enhances JSON schema generation by adding min/max constraints for all integer and numeric scalar types.
Changes:
- Added min/max constraint handling for GraphQL scalar types in JSON schema generation
- Extended test coverage to include unsigned scalar types (UnsignedByte, UnsignedInt, UnsignedLong, UnsignedShort)
- Updated all related test snapshots to reflect the new JSON schema constraints
Reviewed changes
Copilot reviewed 19 out of 19 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| TypeExtensions.cs | Added TryGetJsonSchemaMinimum and TryGetJsonSchemaMaximum methods to map GraphQL scalars to their min/max values for JSON schema generation |
| TestSchema.cs | Updated test query methods to include unsigned scalar parameters in nullable, non-nullable, and defaulted variants |
| GetWithNullableVariables.graphql | Added unsigned scalar variable declarations to the GraphQL query |
| GetWithNonNullableVariables.graphql | Added non-nullable unsigned scalar variable declarations to the GraphQL query |
| GetWithDefaultedVariables.graphql | Added unsigned scalar variables with default values to the GraphQL query |
| IntegrationTestBase.cs | Updated integration tests to pass test values for unsigned scalars |
| All snapshot files (10 files) | Updated expected JSON schemas to include min/max constraints for integer/numeric types and new unsigned scalar fields |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #9182 +/- ##
============================
============================
☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Fusion Gateway Performance ResultsSimple Composite Query
Response Times & Query
query TestQuery {
topProducts(first: 5) {
inStock
name
price
shippingEstimate
upc
weight
reviews {
id
body
author {
id
username
name
}
}
}
}Deep Recursion Query
Response Times & Query
query TestQuery {
users {
id
username
name
reviews {
id
body
product {
inStock
name
price
shippingEstimate
upc
weight
reviews {
id
body
author {
id
username
name
reviews {
id
body
product {
inStock
name
price
shippingEstimate
upc
weight
}
}
}
}
}
}
}
topProducts(first: 5) {
inStock
name
price
shippingEstimate
upc
weight
reviews {
id
body
author {
id
username
name
reviews {
id
body
product {
inStock
name
price
shippingEstimate
upc
weight
}
}
}
}
}
}Variable Batching Throughput
Response Times & Query
query TestQuery($upc: ID!, $price: Long!, $weight: Long!) {
productByUpc(upc: $upc) {
inStock
shippingEstimate(weight: $weight, price: $price)
}
}Variables (5 sets batched per request) [
{ "upc": "1", "price": 899, "weight": 100 },
{ "upc": "2", "price": 1299, "weight": 1000 },
{ "upc": "3", "price": 15, "weight": 20 },
{ "upc": "4", "price": 499, "weight": 100 },
{ "upc": "5", "price": 1299, "weight": 1000 }
]Run 22345128088 • Commit 844ff5d • Tue, 24 Feb 2026 10:28:36 GMT |
Summary of the changes (Less than 80 chars)