Beispiel #1
0
        public void ListOfListValueResolver()
        {
            var innerList1 = new QueryListInputValue(new FakeSyntaxNode());

            innerList1.ListItems.Add(new QueryScalarInputValue(new FakeSyntaxNode(), "15", ScalarValueType.Number));
            innerList1.ListItems.Add(new QueryScalarInputValue(new FakeSyntaxNode(), "12", ScalarValueType.Number));

            var innerList2 = new QueryListInputValue(new FakeSyntaxNode());

            innerList2.ListItems.Add(new QueryScalarInputValue(new FakeSyntaxNode(), "30", ScalarValueType.Number));
            innerList2.ListItems.Add(new QueryScalarInputValue(new FakeSyntaxNode(), "40", ScalarValueType.Number));

            var outerList = new QueryListInputValue(new FakeSyntaxNode());

            outerList.ListItems.Add(innerList1);
            outerList.ListItems.Add(innerList2);

            var typeExpression = GraphTypeExpression.FromDeclaration("[[Int]]");
            var generator      = new InputResolverMethodGenerator(this.CreateSchema());

            var resolver = generator.CreateResolver(typeExpression);
            var result   = resolver.Resolve(outerList) as IEnumerable;

            CollectionAssert.AreEqual(new List <IEnumerable <int> > {
                new List <int> {
                    15, 12
                }, new List <int> {
                    30, 40
                }
            }, result);
        }
Beispiel #2
0
        public void BasicListValueResolver()
        {
            var sourceList = new QueryListInputValue(new FakeSyntaxNode());

            sourceList.ListItems.Add(new QueryScalarInputValue(new FakeSyntaxNode(), "15", ScalarValueType.Number));
            sourceList.ListItems.Add(new QueryScalarInputValue(new FakeSyntaxNode(), "12", ScalarValueType.Number));

            var typeExpression = GraphTypeExpression.FromDeclaration("[Int]");
            var generator      = new InputResolverMethodGenerator(this.CreateSchema());

            var resolver = generator.CreateResolver(typeExpression);
            var result   = resolver.Resolve(sourceList) as IEnumerable;

            CollectionAssert.AreEqual(new List <int> {
                15, 12
            }, result);
        }