public void ContentTypeParsing()
        {
            const String contentType = "text/plain; q=0.5, text/html, text/x-dvi; q=0.8,application/vnd.checkmate+json;version=2;q=0.1";
            var          types       = new ContentNegotiator().Negotiate(contentType);

            var first = types.First();

            Assert.Equal(ContentNegotiator.MediaType.Parse("text/html"), first.MediaType);
            Assert.Equal(1.0f, first.Quality);

            var second = types.Skip(1).First();

            Assert.Equal(ContentNegotiator.MediaType.Parse("text/x-dvi"), second.MediaType);
            Assert.Equal(0.8f, second.Quality);

            var third = types.Skip(2).First();

            Assert.Equal(ContentNegotiator.MediaType.Parse("text/plain"), third.MediaType);
            Assert.Equal(0.5f, third.Quality);

            var fourth    = types.Skip(3).First();
            var mediaType = ContentNegotiator.MediaType.Parse("application/vnd.checkmate+json");

            Assert.Equal(mediaType, fourth.MediaType);
            Assert.Equal(0.1f, fourth.Quality);
        }
Beispiel #2
0
        public void ContentTypeParsing()
        {
            const String contentType = "text/plain; q=0.5, text/html, text/x-dvi; q=0.8,application/vnd.checkmate+json;version=2;q=0.1";
            var types = new ContentNegotiator().Negotiate(contentType);

            var first = types.First();
            Assert.Equal(ContentNegotiator.MediaType.Parse("text/html"), first.MediaType);
            Assert.Equal(1.0f, first.Quality);

            var second = types.Skip(1).First();
            Assert.Equal(ContentNegotiator.MediaType.Parse("text/x-dvi"), second.MediaType);
            Assert.Equal(0.8f, second.Quality);

            var third = types.Skip(2).First();
            Assert.Equal(ContentNegotiator.MediaType.Parse("text/plain"), third.MediaType);
            Assert.Equal(0.5f, third.Quality);

            var fourth = types.Skip(3).First();
            var mediaType = ContentNegotiator.MediaType.Parse("application/vnd.checkmate+json");
            Assert.Equal(mediaType, fourth.MediaType);
            Assert.Equal(0.1f, fourth.Quality);
        }