コード例 #1
0
 public void Constructor1(string queryStringParameterName, string queryStringParameterValue, string mediaType)
 {
     QueryStringMapping mapping = new QueryStringMapping(queryStringParameterName, queryStringParameterValue, mediaType);
     Assert.Equal(queryStringParameterName, mapping.QueryStringParameterName);
     Assert.Equal(queryStringParameterValue, mapping.QueryStringParameterValue);
     Assert.MediaType.AreEqual(mediaType, mapping.MediaType, "MediaType failed to set.");
 }
コード例 #2
0
        public void TryMatchMediaTypeThrowsWithNullUriInHttpRequestMessage(string queryStringParameterName, string queryStringParameterValue, string mediaType)
        {
            QueryStringMapping mapping      = new QueryStringMapping(queryStringParameterName, queryStringParameterValue, mediaType);
            string             errorMessage = RS.Format(Properties.Resources.NonNullUriRequiredForMediaTypeMapping, typeof(QueryStringMapping).Name);

            Assert.Throws <InvalidOperationException>(() => mapping.TryMatchMediaType(new HttpRequestMessage()), errorMessage);
        }
コード例 #3
0
        public void TryMatchMediaTypeIsCaseInsensitive(string name, string value, string query)
        {
            QueryStringMapping mapping = new QueryStringMapping(name, value, "application/json");
            HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, "http://localhost/?" + query);

            Assert.Equal(1.0, mapping.TryMatchMediaType(request));
        }
コード例 #4
0
        public SirenMediaTypeFormatter()
        {
            var header = new MediaTypeHeaderValue("application/vnd.siren+json");
            SupportedMediaTypes.Add(header);

            var mapping = new QueryStringMapping("format", "siren", header);
            MediaTypeMappings.Add(mapping);
        }
コード例 #5
0
        public void Constructor1(string queryStringParameterName, string queryStringParameterValue, string mediaType)
        {
            QueryStringMapping mapping = new QueryStringMapping(queryStringParameterName, queryStringParameterValue, mediaType);

            Assert.Equal(queryStringParameterName, mapping.QueryStringParameterName);
            Assert.Equal(queryStringParameterValue, mapping.QueryStringParameterValue);
            Assert.MediaType.AreEqual(mediaType, mapping.MediaType, "MediaType failed to set.");
        }
コード例 #6
0
        public void TryMatchMediaTypeReturnsZeroWithQueryStringParameterValueNotInUri(string queryStringParameterName, string queryStringParameterValue, string mediaType, string uriBase)
        {
            QueryStringMapping mapping = new QueryStringMapping(queryStringParameterName, queryStringParameterValue, mediaType);
            string             uri     = uriBase + "?" + queryStringParameterName + "=" + "not" + queryStringParameterValue;
            HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, uri);

            Assert.Equal(0.0, mapping.TryMatchMediaType(request));
        }
コード例 #7
0
        /// <summary>
        /// Updates the given <paramref name="formatter"/>'s set of <see cref="MediaTypeMapping"/> elements
        /// so that it associates the <paramref name="mediaType"/> with <see cref="Uri"/>s containing
        /// a specific query parameter and value.
        /// </summary>
        /// <param name="formatter">The <see cref="MediaTypeFormatter"/> to receive the new <see cref="QueryStringMapping"/> item.</param>
        /// <param name="queryStringParameterName">The name of the query parameter.</param>
        /// <param name="queryStringParameterValue">The value assigned to that query parameter.</param>
        /// <param name="mediaType">The media type to associate 
        /// with a <see cref="Uri"/> containing a query string matching <paramref name="queryStringParameterName"/>
        /// and <paramref name="queryStringParameterValue"/>.</param>
        public static void AddQueryStringMapping(
            this MediaTypeFormatter formatter,
            string queryStringParameterName,
            string queryStringParameterValue,
            string mediaType)
        {
            if (formatter == null)
            {
                throw Error.ArgumentNull("formatter");
            }

            QueryStringMapping mapping = new QueryStringMapping(queryStringParameterName, queryStringParameterValue, mediaType);
            formatter.MediaTypeMappings.Add(mapping);
        }
コード例 #8
0
        public void TryMatchMediaTypeThrowsWithNullHttpRequestMessage(
            string queryStringParameterName,
            string queryStringParameterValue,
            string mediaType
            )
        {
            QueryStringMapping mapping = new QueryStringMapping(
                queryStringParameterName,
                queryStringParameterValue,
                mediaType
                );

            Assert.ThrowsArgumentNull(() => mapping.TryMatchMediaType(request: null), "request");
        }
コード例 #9
0
        /// <summary>
        /// Updates the given <paramref name="formatter"/>'s set of <see cref="MediaTypeMapping"/> elements
        /// so that it associates the <paramref name="mediaType"/> with <see cref="Uri"/>s containing
        /// a specific query parameter and value.
        /// </summary>
        /// <param name="formatter">The <see cref="MediaTypeFormatter"/> to receive the new <see cref="QueryStringMapping"/> item.</param>
        /// <param name="queryStringParameterName">The name of the query parameter.</param>
        /// <param name="queryStringParameterValue">The value assigned to that query parameter.</param>
        /// <param name="mediaType">The media type to associate
        /// with a <see cref="Uri"/> containing a query string matching <paramref name="queryStringParameterName"/>
        /// and <paramref name="queryStringParameterValue"/>.</param>
        public static void AddQueryStringMapping(
            this MediaTypeFormatter formatter,
            string queryStringParameterName,
            string queryStringParameterValue,
            string mediaType)
        {
            if (formatter == null)
            {
                throw Error.ArgumentNull("formatter");
            }

            QueryStringMapping mapping = new QueryStringMapping(queryStringParameterName, queryStringParameterValue, mediaType);

            formatter.MediaTypeMappings.Add(mapping);
        }
コード例 #10
0
        public void CsvFormatter_Constructor_ShouldBeOK()
        {
            //Arrange

            //Act
            PI.Net.Http.Formatting.Formatters.CsvFormatter obj = new PI.Net.Http.Formatting.Formatters.CsvFormatter();
            var mapping = obj.MediaTypeMappings[0];

            System.Net.Http.Formatting.QueryStringMapping mapping2 = (System.Net.Http.Formatting.QueryStringMapping)mapping;

            ///Assert
            ///* AreEqual: MediaTypeMappings.Count = 1
            Assert.AreEqual(obj.MediaTypeMappings.Count, 1);
            ///* AreEqual: MediaType = test/csv
            Assert.AreEqual(mapping.MediaType.MediaType, "text/csv");
            ///* IsInstanceOfType: mapping is QueryStringMapping
            Assert.IsInstanceOfType(mapping, typeof(System.Net.Http.Formatting.QueryStringMapping));
            ///* AreEqual: QueryStringParameterName = type
            Assert.AreEqual(mapping2.QueryStringParameterName, "type");
            ///* AreEqual: QueryStringParameterValue = csv
            Assert.AreEqual(mapping2.QueryStringParameterValue, "csv");
        }
コード例 #11
0
 public void TryMatchMediaTypeIsCaseInsensitive(string name, string value, string query)
 {
     QueryStringMapping mapping = new QueryStringMapping(name, value, "application/json");
     HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, "http://localhost/?" + query);
     Assert.Equal(1.0, mapping.TryMatchMediaType(request));
 }
コード例 #12
0
 public void TryMatchMediaTypeThrowsWithNullUriInHttpRequestMessage(string queryStringParameterName, string queryStringParameterValue, string mediaType)
 {
     QueryStringMapping mapping = new QueryStringMapping(queryStringParameterName, queryStringParameterValue, mediaType);
     string errorMessage = Error.Format(Properties.Resources.NonNullUriRequiredForMediaTypeMapping, typeof(QueryStringMapping).Name);
     Assert.Throws<InvalidOperationException>(() => mapping.TryMatchMediaType(new HttpRequestMessage()), errorMessage);
 }
コード例 #13
0
 public void TryMatchMediaTypeThrowsWithNullHttpRequestMessage(string queryStringParameterName, string queryStringParameterValue, string mediaType)
 {
     QueryStringMapping mapping = new QueryStringMapping(queryStringParameterName, queryStringParameterValue, mediaType);
     Assert.ThrowsArgumentNull(() => mapping.TryMatchMediaType(request: null), "request");
 }
コード例 #14
0
 public void TryMatchMediaTypeReturnsZeroWithQueryStringParameterValueNotInUri(string queryStringParameterName, string queryStringParameterValue, string mediaType, string uriBase)
 {
     QueryStringMapping mapping = new QueryStringMapping(queryStringParameterName, queryStringParameterValue, mediaType);
     string uri = uriBase + "?" + queryStringParameterName + "=" + "not" + queryStringParameterValue;
     HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, uri);
     Assert.Equal(0.0, mapping.TryMatchMediaType(request));
 }