// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing

exports[`should compose the appropriate schema 1`] = `
"schema
    @link(url: "https://specs.apollo.dev/link/v1.0")
    @link(url: "https://specs.apollo.dev/join/v0.3", for: EXECUTION)
    
    
    
    
    
    
    @link(
  url: "https://the-guild.dev/graphql/mesh/spec/v1.0"
  import: ["@httpOperation", "@transport", "@extraSchemaDefinitionDirective"]
)
  {
    query: Query
    
    
  }

  
    directive @join__enumValue(graph: join__Graph!) repeatable on ENUM_VALUE

    directive @join__graph(name: String!, url: String!) on ENUM_VALUE

    
      directive @join__field(
        graph: join__Graph
        requires: join__FieldSet
        provides: join__FieldSet
        type: String
        external: Boolean
        override: String
        usedOverridden: Boolean
        
        
      ) repeatable on FIELD_DEFINITION | INPUT_FIELD_DEFINITION
    
    

    directive @join__implements(
      graph: join__Graph!
      interface: String!
    ) repeatable on OBJECT | INTERFACE

    directive @join__type(
      graph: join__Graph!
      key: join__FieldSet
      extension: Boolean! = false
      resolvable: Boolean! = true
      isInterfaceObject: Boolean! = false
    ) repeatable on OBJECT | INTERFACE | UNION | ENUM | INPUT_OBJECT | SCALAR

    directive @join__unionMember(
      graph: join__Graph!
      member: String!
    ) repeatable on UNION

    scalar join__FieldSet
    
  
  
  directive @link(
    url: String
    as: String
    for: link__Purpose
    import: [link__Import]
  ) repeatable on SCHEMA

  scalar link__Import

  enum link__Purpose {
    """
    \`SECURITY\` features provide metadata necessary to securely resolve fields.
    """
    SECURITY

    """
    \`EXECUTION\` features provide metadata necessary for operation execution.
    """
    EXECUTION
  }

  
  
  
  
  
  
  
enum join__Graph {
  GREETINGS @join__graph(name: "greetings", url: "http://localhost:<greetings_port>") 
  HELLOER @join__graph(name: "helloer", url: "http://localhost:<helloer_port>/graphql") 
}

directive @httpOperation(
  subgraph: String
  path: String
  operationSpecificHeaders: [[String]]
  httpMethod: HTTPMethod
  isBinary: Boolean
  requestBaseBody: ObjMap
  queryParamArgMap: ObjMap
  queryStringOptionsByParam: ObjMap
  jsonApiFields: Boolean
  queryStringOptions: ObjMap
) repeatable on FIELD_DEFINITION

directive @transport(
  subgraph: String
  kind: String
  location: String
  headers: [[String]]
  queryStringOptions: ObjMap
  queryParams: [[String]]
) repeatable on SCHEMA

directive @extraSchemaDefinitionDirective(directives: _DirectiveExtensions)  repeatable on OBJECT

scalar ObjMap @join__type(graph: GREETINGS) 

scalar _DirectiveExtensions @join__type(graph: GREETINGS) 

scalar TransportOptions @join__type(graph: HELLOER) 

type Query @extraSchemaDefinitionDirective(
  directives: {transport: [{subgraph: "greetings", kind: "rest", location: "http://localhost:<greetings_port>"}]}
) @join__type(graph: GREETINGS)  @join__type(graph: HELLOER)  {
  greet(name: String!) : greet_200_response @httpOperation(
    subgraph: "greetings"
    path: "/greet/{args.name}"
    operationSpecificHeaders: [["accept", "application/json"]]
    httpMethod: GET
  ) @join__field(graph: GREETINGS) 
  hello: String! @join__field(graph: HELLOER) 
}

type greet_200_response @join__type(graph: GREETINGS)  {
  greeting: String!
}

enum HTTPMethod @join__type(graph: GREETINGS)  {
  GET @join__enumValue(graph: GREETINGS) 
  HEAD @join__enumValue(graph: GREETINGS) 
  POST @join__enumValue(graph: GREETINGS) 
  PUT @join__enumValue(graph: GREETINGS) 
  DELETE @join__enumValue(graph: GREETINGS) 
  CONNECT @join__enumValue(graph: GREETINGS) 
  OPTIONS @join__enumValue(graph: GREETINGS) 
  TRACE @join__enumValue(graph: GREETINGS) 
  PATCH @join__enumValue(graph: GREETINGS) 
}
"
`;

exports[`should execute the query 1`] = `
{
  "data": {
    "greet": {
      "greeting": "Hello, world!",
    },
    "hello": "world",
  },
}
`;
