コード例 #1
0
 public HttpResponseMessage HttpResponseMessageWithMediaTypeFormatter()
 {
     return(this.Request.CreateResponse(
                HttpStatusCode.OK,
                this.responseModel,
                TestObjectFactory.GetCustomMediaTypeFormatter()));
 }
コード例 #2
0
 public IHttpActionResult ContentActionWithNullMediaType()
 {
     return(this.Content(
                HttpStatusCode.OK,
                this.responseModel,
                TestObjectFactory.GetCustomMediaTypeFormatter()));
 }
 public void WithMediaTypeFormatterShouldNotThrowExceptionWithCorrectMediaTypeFormatter()
 {
     MyWebApi
     .Handler <ResponseMessageHandler>()
     .WithHttpRequestMessage(new HttpRequestMessage())
     .ShouldReturnHttpResponseMessage()
     .WithMediaTypeFormatter(TestObjectFactory.GetCustomMediaTypeFormatter());
 }
コード例 #4
0
 public void ContainingMediaTypeFormatterShouldThrowExceptionWhenActionResultDoesNotHaveTheProvidedMediaTypeFormatter()
 {
     MyWebApi
     .Controller <WebApiController>()
     .Calling(c => c.CreatedAction())
     .ShouldReturn()
     .Created()
     .ContainingMediaTypeFormatter(TestObjectFactory.GetCustomMediaTypeFormatter());
 }
コード例 #5
0
 public void WithMediaTypeFormatterShouldNotThrowExceptionWithCorrectMediaTypeFormatter()
 {
     MyWebApi
     .Controller <WebApiController>()
     .Calling(c => c.HttpResponseMessageWithMediaTypeFormatter())
     .ShouldReturn()
     .HttpResponseMessage()
     .WithMediaTypeFormatter(TestObjectFactory.GetCustomMediaTypeFormatter());
 }
コード例 #6
0
 public void ContainingMediaTypeFormatterShouldNotThrowExceptionWhenActionResultHasTheProvidedMediaTypeFormatter()
 {
     MyWebApi
     .Controller <WebApiController>()
     .Calling(c => c.ContentActionWithMediaType())
     .ShouldReturn()
     .Content()
     .ContainingMediaTypeFormatter(TestObjectFactory.GetCustomMediaTypeFormatter());
 }
コード例 #7
0
        public void ValidateMediaTypeFormatterShouldThrowExceptionWithIncorrectMediaTypeFormatter()
        {
            var actionResultWithFormatters = new CreatedNegotiatedContentResult <int>(
                TestObjectFactory.GetUri(), 5, MyWebApi.Controller <WebApiController>().AndProvideTheController());

            MediaTypeFormatterValidator.ValidateMediaTypeFormatter(
                actionResultWithFormatters,
                TestObjectFactory.GetCustomMediaTypeFormatter(),
                TestObjectFactory.GetFailingValidationAction());
        }
コード例 #8
0
        public void ValidateMediaTypeFormatterShouldNotThrowExceptionWithSingleCorrectMediaTypeFormatter()
        {
            var actionResultWithFormatter = new FormattedContentResult <int>(
                HttpStatusCode.OK,
                5,
                TestObjectFactory.GetCustomMediaTypeFormatter(),
                new MediaTypeHeaderValue(TestObjectFactory.MediaType),
                MyWebApi.Controller <WebApiController>().AndProvideTheController());

            MediaTypeFormatterValidator.ValidateMediaTypeFormatter(
                actionResultWithFormatter,
                TestObjectFactory.GetCustomMediaTypeFormatter(),
                TestObjectFactory.GetFailingValidationAction());
        }
コード例 #9
0
        public HttpResponseMessage HttpResponseMessageAction()
        {
            var response = new HttpResponseMessage(HttpStatusCode.OK)
            {
                ReasonPhrase   = "Custom reason phrase",
                Version        = new Version(1, 1),
                Content        = new ObjectContent(this.responseModel.GetType(), this.responseModel, TestObjectFactory.GetCustomMediaTypeFormatter()),
                RequestMessage = this.Request
            };

            response.Headers.Add("TestHeader", "TestHeaderValue");
            response.Content.Headers.Add("TestHeader", "TestHeaderValue");

            return(response);
        }
コード例 #10
0
        protected override Task <HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
        {
            return(Task.Run(
                       () =>
            {
                if (request.Headers.Contains("StringContent"))
                {
                    return new HttpResponseMessage
                    {
                        Content = new StringContent("Test string")
                    };
                }

                if (request.Headers.Contains("NoContent"))
                {
                    return new HttpResponseMessage(HttpStatusCode.NoContent);;
                }

                if (request.Headers.Contains("NotFound"))
                {
                    return new HttpResponseMessage(HttpStatusCode.NotFound);
                }

                if (request.Headers.Contains("FromRequest"))
                {
                    return request.CreateResponse(HttpStatusCode.BadRequest, this.responseModel);
                }

                var response = new HttpResponseMessage(HttpStatusCode.OK)
                {
                    ReasonPhrase = "Custom reason phrase",
                    Version = new Version(1, 1),
                    Content = new ObjectContent(this.responseModel.GetType(), this.responseModel, TestObjectFactory.GetCustomMediaTypeFormatter()),
                    RequestMessage = request
                };

                response.Headers.Add("TestHeader", "TestHeaderValue");
                response.Content.Headers.Add("TestHeader", "TestHeaderValue");

                return response;
            },
                       cancellationToken));
        }