Ejemplo n.º 1
0
        public void Serialize_KitchenSinkWithoutIndentation_OutputIsOneLine()
        {
            // arrange
            string          query         = FileResource.Open("kitchen-sink.graphql");
            DocumentNode    queryDocument = Parser.Default.Parse(query);
            QuerySerializer serializer    = new QuerySerializer();

            // act
            serializer.Visit(queryDocument);

            // assert
            Assert.Equal(Snapshot.Current(), Snapshot.New(serializer.Value));
        }
Ejemplo n.º 2
0
        public void Serialize_ShortHandQueryWithIndentation_LineBetweenFields()
        {
            // arrange
            string          query         = "{ foo { foo bar { foo @foo @bar bar @bar baz } } }";
            DocumentNode    queryDocument = Parser.Default.Parse(query);
            QuerySerializer serializer    = new QuerySerializer(true);

            // act
            serializer.Visit(queryDocument);

            // assert
            Assert.Equal(Snapshot.Current(), Snapshot.New(serializer.Value));
        }
Ejemplo n.º 3
0
        public void Serialize_ShortHandQueryWithIndentation_OutputIsFormatted()
        {
            // arrange
            string          query         = "{ foo(s: \"String\") { bar @foo { baz @foo @bar } } }";
            DocumentNode    queryDocument = Parser.Default.Parse(query);
            QuerySerializer serializer    = new QuerySerializer(true);

            // act
            serializer.Visit(queryDocument);

            // assert
            Assert.Equal(Snapshot.Current(), Snapshot.New(serializer.Value));
        }
Ejemplo n.º 4
0
        public void Serialize_KitchenSinkWithIndentation_OutputIsFormatted()
        {
            // arrange
            string          query         = FileResource.Open("kitchen-sink.graphql");
            DocumentNode    queryDocument = Parser.Default.Parse(query);
            QuerySerializer serializer    = new QuerySerializer(true);

            // act
            serializer.Visit(queryDocument);

            // assert
            serializer.Value.Snapshot();
        }
Ejemplo n.º 5
0
        public void Serialize_ShortHandQueryNoIndentation_InOutShouldBeTheSame()
        {
            // arrange
            string          query         = "{ foo(s: \"String\") { bar @foo { baz @foo @bar } } }";
            DocumentNode    queryDocument = Parser.Default.Parse(query);
            QuerySerializer serializer    = new QuerySerializer();

            // act
            serializer.Visit(queryDocument);

            // assert
            Assert.Equal(
                query,
                serializer.Value);
        }
Ejemplo n.º 6
0
        public void Serialize_FargmentWithVariableDefs_InOutShouldBeTheSame()
        {
            // arrange
            string       query         = "fragment Foo ($bar: [String!]!) on Bar { baz }";
            DocumentNode queryDocument = Parser.Default.Parse(query,
                                                              new ParserOptions(allowFragmentVariables: true));
            QuerySerializer serializer = new QuerySerializer();

            // act
            serializer.Visit(queryDocument);

            // assert
            Assert.Equal(
                query,
                serializer.Value);
        }
Ejemplo n.º 7
0
        public void Serialize_KitchenSinkWithIndentation_CanBeParsed()
        {
            // arrange
            string          query         = FileResource.Open("kitchen-sink.graphql");
            DocumentNode    queryDocument = Parser.Default.Parse(query);
            QuerySerializer serializer    = new QuerySerializer(true);

            // act
            serializer.Visit(queryDocument);

            // assert
            string       serializedQuery = serializer.Value;
            DocumentNode parsedQuery     = Parser.Default.Parse(serializedQuery);

            serializer.Visit(parsedQuery);
            Assert.Equal(serializedQuery, serializer.Value);
        }
Ejemplo n.º 8
0
        public void Serialize_QueryWithVarDeclaration_InOutShouldBeTheSame()
        {
            // arrange
            string query =
                "query Foo($bar: [String!]!) { foo(s: \"String\") " +
                "{ bar @foo { baz @foo @bar } } }";

            DocumentNode    queryDocument = Parser.Default.Parse(query);
            QuerySerializer serializer    = new QuerySerializer();

            // act
            serializer.Visit(queryDocument);

            // assert
            Assert.Equal(
                query,
                serializer.Value);
        }