public void MutationRootBuildsQuery()
        {
            MutationQuery query = new MutationQuery();

            query
            .customerAccessTokenCreate(r => r
                                       .customerAccessToken(a => a
                                                            .accessToken()
                                                            ),
                                       input: new CustomerAccessTokenCreateInput(email: "*****@*****.**", password: "******")
                                       );

            Assert.AreEqual(
                "mutation{customerAccessTokenCreate (input:{email:\"[email protected]\",password:\"123456\"}){customerAccessToken {accessToken }}}",
                query.ToString()
                );
            // check that ToString does not mutate
            Assert.AreEqual(
                "mutation{customerAccessTokenCreate (input:{email:\"[email protected]\",password:\"123456\"}){customerAccessToken {accessToken }}}",
                query.ToString()
                );
        }
        private void SetupCustomerAccessToken()
        {
            MutationQuery mutation = new MutationQuery();

            mutation.customerAccessTokenCreate((a) => a
                                               .customerAccessToken(at => at
                                                                    .accessToken()
                                                                    ),
                                               input: new CustomerAccessTokenCreateInput("*****@*****.**", "password")
                                               );

            AddResponse(
                mutation,
                @"{
                    ""data"": {
                        ""customerAccessTokenCreate"": {
                            ""customerAccessToken"": {
                                ""accessToken"": ""i am a token""
                            }
                        }
                    }
                }"
                );
        }