def test_federated_schema_mark_type_with_multiple_keys(): type_defs = """ type Query type Product @key(fields: "upc sku") { upc: String! sku: String! name: String price: Int } """ product = FederatedObjectType("Product") schema = make_federated_schema(type_defs, product) assert sic(print_object(schema.get_type("Product"))) == sic(""" type Product { upc: String! sku: String! name: String price: Int } """) assert sic(print_union(schema.get_type("_Entity"))) == sic(""" union _Entity = Product """)
def test_federated_schema_mark_type_with_key_split_type_defs(): query_type_defs = """ type Query """ product_type_defs = """ type Product @key(fields: "upc") { upc: String! name: String price: Int } """ product = FederatedObjectType("Product") schema = make_federated_schema( [query_type_defs, product_type_defs], product, ) assert sic(print_object(schema.get_type("Product"))) == sic(""" type Product { upc: String! name: String price: Int } """) assert sic(print_union(schema.get_type("_Entity"))) == sic(""" union _Entity = Product """)