Example #1
0
    public void InlineFragment_EnterAndLeave()
    {
        /* Given */
        var selection = Parser.Create("...{ field }").ParseInlineFragment();

        var visitor = Substitute.For <VisitAllBase>();
        var sut     = new ReadOnlyExecutionDocumentWalker(
            new ExecutionDocumentWalkerOptions().Add(visitor));

        /* When */
        sut.Visit(selection);

        /* Then */
        visitor.Received().Enter(selection);
        visitor.Received().Leave(selection);
    }
Example #2
0
    public void FragmentDefinition_EnterAndLeave()
    {
        /* Given */
        FragmentDefinition definition = @"fragment Name on Human { field }";

        var visitor = Substitute.For <VisitAllBase>();
        var sut     = new ReadOnlyExecutionDocumentWalker(
            new ExecutionDocumentWalkerOptions().Add(visitor));

        /* When */
        sut.Visit(definition);

        /* Then */
        visitor.Received().Enter(definition);
        visitor.Received().Leave(definition);
    }
Example #3
0
    public void ExecutableDocument_EnterAndLeave()
    {
        /* Given */
        ExecutableDocument document = @"";

        var visitor = Substitute.For <VisitAllBase>();
        var sut     = new ReadOnlyExecutionDocumentWalker(
            new ExecutionDocumentWalkerOptions().Add(visitor));

        /* When */
        sut.Visit(document);

        /* Then */
        visitor.Received().Enter(document);
        visitor.Received().Leave(document);
    }
Example #4
0
    public void SelectionSet_EnterAndLeave()
    {
        /* Given */
        var definition = Parser.Create("{ field }").ParseSelectionSet();

        var visitor = Substitute.For <VisitAllBase>();
        var sut     = new ReadOnlyExecutionDocumentWalker(
            new ExecutionDocumentWalkerOptions().Add(visitor));

        /* When */
        sut.Visit(definition);

        /* Then */
        visitor.Received().Enter(definition);
        visitor.Received().Leave(definition);
    }
Example #5
0
        public void Tanka_2()
        {
            var rule   = new  OperationNameUniquenessRule();
            var walker = new ReadOnlyExecutionDocumentWalker(
                new ExecutionDocumentWalkerOptions()
            {
                ExecutableDocument =
                {
                    rule
                },
                OperationDefinition =
                {
                    rule
                }
            }
                );

            walker.Visit(_query2);
        }