Exemple #1
0
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
        """)
Exemple #2
0
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
        """)