public async Task ExecuteShortHandQuery()
        {
            // arrange
            Schema schema   = CreateSchema();
            var    executer = QueryExecutionBuilder.BuildDefault(schema);
            var    request  = new QueryRequest("{ a }");

            // act
            IExecutionResult result = await executer.ExecuteAsync(request);

            // assert
            Assert.Null(result.Errors);
            result.Snapshot();
        }
Пример #2
0
        public async Task ExecuteQueryWith2OperationsAndInvalidOpName_Error()
        {
            // arrange
            Schema schema   = CreateSchema();
            var    executer = QueryExecutionBuilder.BuildDefault(schema);
            var    request  = new QueryRequest(
                "query a { a } query b { a }", "c");

            // act
            IExecutionResult result = await executer.ExecuteAsync(request);

            // assert
            Assert.NotNull(result.Errors);
            result.Snapshot();
        }
Пример #3
0
        public async Task ExecuteQueryWith2OperationsAndOperationName_NoErrors()
        {
            // arrange
            Schema schema   = CreateSchema();
            var    executor = QueryExecutionBuilder.BuildDefault(schema);
            var    request  = new QueryRequest(
                "query a { a } query b { a }", "a");

            // act
            IExecutionResult result = await executor.ExecuteAsync(request);

            // assert
            Assert.Empty(result.Errors);
            result.MatchSnapshot();
        }
Пример #4
0
        public async Task ExecuteFieldWithResolverResultError()
        {
            // arrange
            var variableValues =
                new Dictionary <string, IValueNode>();

            Schema schema   = CreateSchema();
            var    executer = QueryExecutionBuilder.BuildDefault(schema);
            var    request  = new QueryRequest("{ y yasync }");

            // act
            IExecutionResult result = await executer.ExecuteAsync(request);

            // assert
            Assert.NotNull(result.Errors);
            result.Snapshot();
        }
Пример #5
0
        public async Task ExecuteShortHandQueryWithTracing()
        {
            // arrange
            Schema         schema   = CreateSchema();
            IQueryExecuter executer = QueryExecutionBuilder
                                      .BuildDefault(schema, new QueryExecutionOptions
            {
                EnableTracing = true
            });
            var request = new QueryRequest("{ a }");

            // act
            IExecutionResult result = await executer.ExecuteAsync(request);

            // assert
            Assert.NotEmpty(result.Extensions);
            Assert.True(result.Extensions.ContainsKey("tracing"));
        }
Пример #6
0
        public async Task ExecuteShortHandQuery()
        {
            // arrange
            Schema         schema   = CreateSchema();
            IQueryExecutor executor = QueryExecutionBuilder
                                      .BuildDefault(schema);
            var request =
                QueryRequestBuilder.New()
                .SetQuery("{ a }")
                .Create();

            // act
            IExecutionResult result = await executor.ExecuteAsync(request);

            // assert
            Assert.Empty(result.Errors);
            result.MatchSnapshot();
        }
Пример #7
0
        public async Task ExecuteWithMissingVariables_Error()
        {
            // arrange
            var variableValues =
                new Dictionary <string, object>();
            Schema         schema   = CreateSchema();
            IQueryExecuter executer = QueryExecutionBuilder
                                      .BuildDefault(schema);
            var request = new QueryRequest(
                "query x($a: String!) { b(a: $a) }")
            {
                VariableValues = variableValues
            };

            // act
            IExecutionResult result = await executer.ExecuteAsync(request);

            // assert
            Assert.NotNull(result.Errors);
            result.Snapshot();
        }
Пример #8
0
        public async Task ExecuteFieldWithResolverResult()
        {
            // arrange
            var variableValues =
                new Dictionary <string, IValueNode>();

            Schema         schema   = CreateSchema();
            IQueryExecutor executor =
                QueryExecutionBuilder.BuildDefault(schema);
            var request =
                QueryRequestBuilder.New()
                .SetQuery("{ x xasync }")
                .Create();

            // act
            IExecutionResult result = await executor.ExecuteAsync(request);

            // assert
            Assert.Empty(result.Errors);
            result.MatchSnapshot();
        }
Пример #9
0
        public async Task ExecuteWithNonNullVariableInvalidType_Error()
        {
            // arrange
            var variableValues = new Dictionary <string, object>()
            {
                { "a", new IntValueNode(123) }
            };

            Schema schema   = CreateSchema();
            var    executor = QueryExecutionBuilder.BuildDefault(schema);
            var    request  = new QueryRequest(
                "query x($a: String!) { b(a: $a) }")
            {
                VariableValues = variableValues
            };

            // act
            IExecutionResult result = await executor.ExecuteAsync(request);

            // assert
            Assert.NotNull(result.Errors);
            result.MatchSnapshot();
        }
Пример #10
0
        public async Task ExecuteWithNonNullVariableValidValue_NoErrors()
        {
            // arrange
            var variableValues =
                new Dictionary <string, object>()
            {
                { "a", new StringValueNode("123") }
            };

            Schema schema   = CreateSchema();
            var    executer = QueryExecutionBuilder.BuildDefault(schema);
            var    request  = new QueryRequest(
                "query x($a: String!) { b(a: $a) }")
            {
                VariableValues = variableValues
            };

            // act
            IExecutionResult result = await executer.ExecuteAsync(request);

            // assert
            Assert.Empty(result.Errors);
            result.Snapshot();
        }