Esempio n. 1
0
        private static HttpContext CreateContext(
            bool isMaxRequestBodySizeFeatureReadOnly = false,
            bool skipTrailerFeatureSet = false,
            string?protocol            = null,
            string?contentType         = null)
        {
            var httpContext         = new DefaultHttpContext();
            var responseFeature     = new TestHttpResponseFeature();
            var responseBodyFeature = new TestHttpResponseBodyFeature(httpContext.Features.Get <IHttpResponseBodyFeature>(), responseFeature);

            httpContext.Request.Protocol    = protocol ?? GrpcProtocolConstants.Http2Protocol;
            httpContext.Request.ContentType = contentType ?? GrpcProtocolConstants.GrpcContentType;
            httpContext.Features.Set <IHttpMinRequestBodyDataRateFeature>(new TestMinRequestBodyDataRateFeature());
            httpContext.Features.Set <IHttpMaxRequestBodySizeFeature>(new TestMaxRequestBodySizeFeature(isMaxRequestBodySizeFeatureReadOnly, 100));
            httpContext.Features.Set <IHttpResponseFeature>(responseFeature);
            httpContext.Features.Set <IHttpResponseBodyFeature>(responseBodyFeature);
            if (!skipTrailerFeatureSet)
            {
                httpContext.Features.Set <IHttpResponseTrailersFeature>(new TestHttpResponseTrailersFeature());
            }

            return(httpContext);
        }
Esempio n. 2
0
 public TestHttpResponseBodyFeature(IHttpResponseBodyFeature innerResponseBodyFeature, TestHttpResponseFeature responseFeature)
 {
     _innerResponseBodyFeature = innerResponseBodyFeature ?? throw new ArgumentNullException(nameof(innerResponseBodyFeature));
     _responseFeature          = responseFeature ?? throw new ArgumentNullException(nameof(responseFeature));
 }