private IReadOnlyList <ApiDescription> GetApiDescriptions( ActionDescriptor action, List <MockFormatter> formatters) { var context = new ApiDescriptionProviderContext(new ActionDescriptor[] { action }); var formattersProvider = new Mock <IOutputFormattersProvider>(MockBehavior.Strict); formattersProvider.Setup(fp => fp.OutputFormatters).Returns(formatters); var constraintResolver = new Mock <IInlineConstraintResolver>(); constraintResolver.Setup(c => c.ResolveConstraint("int")) .Returns(new IntRouteConstraint()); var modelMetadataProvider = TestModelMetadataProvider.CreateDefaultProvider(); var provider = new DefaultApiDescriptionProvider( formattersProvider.Object, constraintResolver.Object, modelMetadataProvider); provider.OnProvidersExecuting(context); provider.OnProvidersExecuted(context); return(new ReadOnlyCollection <ApiDescription>(context.Results)); }
private IReadOnlyList <ApiDescription> GetApiDescriptions( ActionDescriptor action, List <MockFormatter> formatters) { var context = new ApiDescriptionProviderContext(new ActionDescriptor[] { action }); var formattersProvider = new Mock <IOutputFormattersProvider>(MockBehavior.Strict); formattersProvider.Setup(fp => fp.OutputFormatters).Returns(formatters); var constraintResolver = new Mock <IInlineConstraintResolver>(); constraintResolver.Setup(c => c.ResolveConstraint("int")) .Returns(new IntRouteConstraint()); var modelMetadataProvider = new Mock <IModelMetadataProvider>(MockBehavior.Strict); modelMetadataProvider .Setup(mmp => mmp.GetMetadataForType(null, It.IsAny <Type>())) .Returns((Func <object> accessor, Type type) => { return(new ModelMetadata(modelMetadataProvider.Object, null, accessor, type, null)); }); var provider = new DefaultApiDescriptionProvider( formattersProvider.Object, constraintResolver.Object, modelMetadataProvider.Object); provider.Invoke(context, () => { }); return(context.Results); }
private IReadOnlyList <ApiDescription> GetApiDescriptions( ActionDescriptor action, List <MockFormatter> formatters) { var context = new ApiDescriptionProviderContext(new ActionDescriptor[] { action }); var formattersProvider = new Mock <IOutputFormattersProvider>(MockBehavior.Strict); formattersProvider.Setup(fp => fp.OutputFormatters).Returns(formatters); var constraintResolver = new Mock <IInlineConstraintResolver>(); constraintResolver.Setup(c => c.ResolveConstraint("int")) .Returns(new IntRouteConstraint()); var modelMetadataProvider = new DataAnnotationsModelMetadataProvider(); var provider = new DefaultApiDescriptionProvider( formattersProvider.Object, constraintResolver.Object, modelMetadataProvider); provider.Invoke(context, () => { }); return(context.Results); }