Fix a scalar type dependecy bug.

Scalar types didn't trace dependecies based on their base types.
This commit is contained in:
Victor Petrovykh 2024-01-31 23:36:13 -05:00
parent 6e7a350d42
commit cb3d6ca2f9
2 changed files with 17 additions and 0 deletions

View file

@ -552,6 +552,15 @@ def trace_layout_Schema(
trace_layout(decl, ctx=ctx)
@trace_layout.register
def trace_layout_CreateScalarType(
node: qlast.CreateScalarType,
*,
ctx: LayoutTraceContext,
) -> None:
_trace_item_layout(node, ctx=ctx)
@trace_layout.register
def trace_layout_CreateObjectType(
node: qlast.CreateObjectType,

View file

@ -1590,6 +1590,14 @@ class TestSchema(tb.BaseSchemaLoadTest):
}
"""
def test_schema_scalar_order_01(self):
# Make sure scalar types account for base types when tracing SDL
# dependencies.
"""
scalar type two extending one;
scalar type one extending str;
"""
def test_schema_property_cardinality_alter_01(self):
schema = self.load_schema('''
type Foo {