graphql/graphql-js

Provide utility to validate that an response match a given query

Open

#563 opened on Nov 10, 2016

View on GitHub
 (2 comments) (8 reactions) (0 assignees)TypeScript (19,825 stars) (2,223 forks)batch import
help wantedneeds exploration

Description

When writing unit tests one need to mock any response that would otherwise come from the graphql server. Given that setting up the wrong expectation for the mocked payload can lead to writing tests against the wrong schema. A utility function that can be used to validate that a given object match a given query would be really useful to have.

Example payload used as a mock response:

{
  user: {
    id: 'some-id',
    name: 'Smith'
  }
}

The corresponding query is:

gql `query {
  user(id: $userId) {
    id
  }
}`

As you can see the mock response does not match the query and it would be nice to be able to assert on that.

I would be happy to submit a PR with this, but would like to know if there is a place I start looking and where is the right interface we might want to have for it.

Contributor guide