示例#1
0
        /// <summary>
        /// Tests whether created result contains exactly the same types of media type formatters as the provided collection.
        /// </summary>
        /// <param name="mediaTypeFormatters">Expected collection of media type formatters.</param>
        /// <returns>The same created test builder.</returns>
        public IAndCreatedTestBuilder ContainingMediaTypeFormatters(IEnumerable <MediaTypeFormatter> mediaTypeFormatters)
        {
            MediaTypeFormatterValidator.ValidateMediaTypeFormatters(
                this.ActionResult,
                mediaTypeFormatters,
                this.ThrowNewCreatedResultAssertionException);

            return(this);
        }
示例#2
0
        /// <summary>
        /// Tests whether created result contains the media type formatters provided by builder.
        /// </summary>
        /// <param name="formattersBuilder">Builder for expected media type formatters.</param>
        /// <returns>The same created test builder.</returns>
        public IAndCreatedTestBuilder ContainingMediaTypeFormatters(Action <IFormattersBuilder> formattersBuilder)
        {
            MediaTypeFormatterValidator.ValidateMediaTypeFormattersBuilder(
                this.ActionResult,
                formattersBuilder,
                this.ThrowNewCreatedResultAssertionException);

            return(this);
        }
示例#3
0
        /// <summary>
        /// Testuje, či má odpoveď HTTP nainštalovaný formátovač médií.
        /// </summary>
        /// <param name="mediaTypeFormatter">Expected media type formatter.</param>
        /// <returns>The same HTTP response message test builder.</returns>
        public IAndHttpHandlerResponseMessageTestBuilder ValidWithMediaTypeFormatter(MediaTypeFormatter mediaTypeFormatter)
        {
            MediaTypeFormatterValidator.ValidateMediaTypeFormatter(
                this.httpResponseMessage.Content,
                mediaTypeFormatter,
                this.ThrowNewHttpResponseMessageAssertionException);

            return(this);
        }
示例#4
0
        /// <summary>
        /// Tests whether content result contains the provided media type formatter.
        /// </summary>
        /// <param name="mediaTypeFormatter">Expected media type formatter.</param>
        /// <returns>The same content test builder.</returns>
        public IAndContentTestBuilder ContainingMediaTypeFormatter(MediaTypeFormatter mediaTypeFormatter)
        {
            MediaTypeFormatterValidator.ValidateMediaTypeFormatter(
                this.ActionResult,
                mediaTypeFormatter,
                this.ThrowNewContentResultAssertionException);

            return(this);
        }
        public void ValidateMediaTypeFormattersShouldNotThrowExceptionWithCorrectMediaTypeFormatter()
        {
            var actionResultWithFormatters = new CreatedNegotiatedContentResult <int>(
                TestObjectFactory.GetUri(), 5, MyWebApi.Controller <WebApiController>().AndProvideTheController());

            MediaTypeFormatterValidator.ValidateMediaTypeFormatters(
                actionResultWithFormatters,
                MediaTypeFormatterValidator.GetDefaultMediaTypeFormatters(),
                TestObjectFactory.GetFailingValidationAction());
        }
        public void ValidateMediaTypeFormatterShouldThrowExceptionWithIncorrectMediaTypeFormatter()
        {
            var actionResultWithFormatters = new CreatedNegotiatedContentResult <int>(
                TestObjectFactory.GetUri(), 5, MyWebApi.Controller <WebApiController>().Controller);

            MediaTypeFormatterValidator.ValidateMediaTypeFormatter(
                actionResultWithFormatters,
                TestObjectFactory.GetCustomMediaTypeFormatter(),
                TestObjectFactory.GetFailingValidationAction());
        }
        public void ValidateMediaTypeFormattersBuilderShouldThrowExceptionWithIncorrectBuilder()
        {
            var actionResultWithFormatters = new CreatedNegotiatedContentResult <int>(
                TestObjectFactory.GetUri(), 5, MyWebApi.Controller <WebApiController>().AndProvideTheController());

            MediaTypeFormatterValidator.ValidateMediaTypeFormattersBuilder(
                actionResultWithFormatters,
                formatters => formatters
                .ContainingMediaTypeFormatterOfType <CustomMediaTypeFormatter>(),
                TestObjectFactory.GetFailingValidationAction());
        }
        public void ValidateMediaTypeFormattersBuilderShouldNotThrowExceptionWithCorrectBuilder()
        {
            var actionResultWithFormatters = new CreatedNegotiatedContentResult <int>(
                TestObjectFactory.GetUri(), 5, MyWebApi.Controller <WebApiController>().Controller);

            MediaTypeFormatterValidator.ValidateMediaTypeFormattersBuilder(
                actionResultWithFormatters,
                formatters => formatters
                .ContainingMediaTypeFormatter(new JsonMediaTypeFormatter())
                .AndAlso()
                .ContainingMediaTypeFormatterOfType <FormUrlEncodedMediaTypeFormatter>(),
                TestObjectFactory.GetFailingValidationAction());
        }
        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());
        }
        public void GetDefaultMediaTypeFormattersShouldReturnProperFormatters()
        {
            var defaultFormatters = MediaTypeFormatterValidator.GetDefaultMediaTypeFormatters();

            Assert.IsNotNull(defaultFormatters);

            var result = defaultFormatters
                         .All(f => Reflection.AreSameTypes(f.GetType(), typeof(FormUrlEncodedMediaTypeFormatter)) ||
                              Reflection.AreSameTypes(f.GetType(), typeof(JQueryMvcFormUrlEncodedFormatter)) ||
                              Reflection.AreSameTypes(f.GetType(), typeof(JsonMediaTypeFormatter)) ||
                              Reflection.AreSameTypes(f.GetType(), typeof(XmlMediaTypeFormatter)));

            Assert.AreEqual(4, defaultFormatters.Count());
            Assert.IsTrue(result);
        }
示例#11
0
 /// <summary>
 /// Tests whether created result contains the default media type formatters provided by the framework.
 /// </summary>
 /// <returns>The same created test builder.</returns>
 public IAndCreatedTestBuilder ContainingDefaultFormatters()
 {
     return(this.ContainingMediaTypeFormatters(MediaTypeFormatterValidator.GetDefaultMediaTypeFormatters()));
 }