Пример #1
0
        private static FieldsToSerialize CreateFieldsToSerialize(IResourceGraph resourceGraph)
        {
            var request = new JsonApiRequest();

            var constraintProviders = new IQueryConstraintProvider[]
            {
                new SparseFieldSetQueryStringParameterReader(request, resourceGraph)
            };

            var accessor = new Mock <IResourceDefinitionAccessor>().Object;

            return(new FieldsToSerialize(resourceGraph, constraintProviders, accessor));
        }
Пример #2
0
        private static FieldsToSerialize CreateFieldsToSerialize(IResourceGraph resourceGraph)
        {
            var request = new JsonApiRequest();

            var constraintProviders = new IQueryConstraintProvider[]
            {
                new SparseFieldSetQueryStringParameterReader(request, resourceGraph)
            };

            var resourceDefinitionProvider = DependencyFactory.CreateResourceDefinitionProvider(resourceGraph);

            return(new FieldsToSerialize(resourceGraph, constraintProviders, resourceDefinitionProvider));
        }
Пример #3
0
        protected IEnumerable <IQueryConstraintProvider> Wrap(IncludeExpression includeExpression)
        {
            var expressionsInScope = new List <ExpressionInScope>
            {
                new ExpressionInScope(null, includeExpression)
            };

            var mock = new Mock <IQueryConstraintProvider>();

            mock.Setup(provider => provider.GetConstraints()).Returns(expressionsInScope);

            IQueryConstraintProvider includeConstraintProvider = mock.Object;

            return(includeConstraintProvider.AsEnumerable());
        }
Пример #4
0
        private IEnumerable <IQueryConstraintProvider> GetIncludeConstraints(IEnumerable <IEnumerable <RelationshipAttribute> > inclusionChains = null)
        {
            var expressionsInScope = new List <ExpressionInScope>();

            if (inclusionChains != null)
            {
                var chains            = inclusionChains.Select(relationships => new ResourceFieldChainExpression(relationships.ToArray())).ToList();
                var includeExpression = IncludeChainConverter.FromRelationshipChains(chains);
                expressionsInScope.Add(new ExpressionInScope(null, includeExpression));
            }

            var mock = new Mock <IQueryConstraintProvider>();

            mock.Setup(x => x.GetConstraints()).Returns(expressionsInScope);

            IQueryConstraintProvider includeConstraintProvider = mock.Object;

            return(includeConstraintProvider.AsEnumerable());
        }