Exemplo n.º 1
0
        public void StatusCode_DefaultsTo200()
        {
            // Arrange & Act
            var responseInformation = new ResponseFeature();

            // Assert
            Assert.Equal(200, responseInformation.StatusCode);
            Assert.False(responseInformation.HasStarted);

            responseInformation.FireOnSendingHeaders();

            Assert.True(responseInformation.HasStarted);
        }
Exemplo n.º 2
0
            private HttpResponseMessage GenerateResponse()
            {
                _responseFeature.FireOnSendingHeaders();
                var httpContext = Context.HttpContext;

                var response = new HttpResponseMessage();

                response.StatusCode     = (HttpStatusCode)httpContext.Response.StatusCode;
                response.ReasonPhrase   = httpContext.Features.Get <IHttpResponseFeature>().ReasonPhrase;
                response.RequestMessage = _request;
                // response.Version = owinResponse.Protocol;

                response.Content = new StreamContent(_responseStream);

                foreach (var header in httpContext.Response.Headers)
                {
                    if (!response.Headers.TryAddWithoutValidation(header.Key, (IEnumerable <string>)header.Value))
                    {
                        bool success = response.Content.Headers.TryAddWithoutValidation(header.Key, (IEnumerable <string>)header.Value);
                        Contract.Assert(success, "Bad header");
                    }
                }
                return(response);
            }