public void Constructor_WhenValueIsNotNullButTypeDoesNotMatch_ThrowsException() { Assert.ThrowsArgument(() => { new ObjectContent(typeof(IList <string>), new Dictionary <string, string>(), new JsonMediaTypeFormatter()); }, "value", "An object of type 'Dictionary`2' cannot be used with a type parameter of 'IList`1'."); }
public void ReadAsMultipartAsync_DetectsNonMultipartContent() { Assert.ThrowsArgumentNull(() => HttpContentMultipartExtensions.IsMimeMultipartContent(null), "content"); Assert.ThrowsArgument(() => new ByteArrayContent(new byte[0]).ReadAsMultipartAsync().Result, "content"); Assert.ThrowsArgument(() => new StringContent(String.Empty).ReadAsMultipartAsync().Result, "content"); Assert.ThrowsArgument(() => new StringContent(String.Empty, Encoding.UTF8, "multipart/form-data").ReadAsMultipartAsync().Result, "content"); }
public void Constructor1ThrowsWithNullFormatterInCollection() { Assert.ThrowsArgument( () => new MediaTypeFormatterCollection(new MediaTypeFormatter[] { null }), "formatters", RS.Format(Properties.Resources.CannotHaveNullInList, typeof(MediaTypeFormatter).Name)); }
public void SupportedMediaTypes_AddThrowsWithMediaRange(MediaTypeHeaderValue mediaType) { MockMediaTypeFormatter formatter = new MockMediaTypeFormatter(); Collection <MediaTypeHeaderValue> supportedMediaTypes = formatter.SupportedMediaTypes; Assert.ThrowsArgument(() => supportedMediaTypes.Add(mediaType), "item", Error.Format(Properties.Resources.CannotUseMediaRangeForSupportedMediaType, typeof(MediaTypeHeaderValue).Name, mediaType.MediaType)); }
public void ReadAsHttpRequestMessageVerifyArguments() { Assert.ThrowsArgumentNull(() => HttpContentMessageExtensions.ReadAsHttpRequestMessageAsync(null), "content"); Assert.ThrowsArgument(() => new ByteArrayContent(new byte[] { }).ReadAsHttpRequestMessageAsync(), "content"); Assert.ThrowsArgument(() => new StringContent(String.Empty).ReadAsHttpRequestMessageAsync(), "content"); Assert.ThrowsArgument(() => new StringContent(String.Empty, Encoding.UTF8, "application/http").ReadAsHttpRequestMessageAsync(), "content"); Assert.ThrowsArgument(() => { HttpContent content = new StringContent(String.Empty); content.Headers.ContentType = ParserData.HttpResponseMediaType; content.ReadAsHttpRequestMessageAsync(); }, "content"); Assert.ThrowsArgumentNull(() => { HttpContent content = new StringContent(String.Empty); content.Headers.ContentType = ParserData.HttpRequestMediaType; content.ReadAsHttpRequestMessageAsync(null); }, "uriScheme"); Assert.ThrowsArgument(() => { HttpContent content = new StringContent(String.Empty); content.Headers.ContentType = ParserData.HttpRequestMediaType; content.ReadAsHttpRequestMessageAsync("i n v a l i d"); }, "uriScheme"); Assert.ThrowsArgumentGreaterThanOrEqualTo(() => { HttpContent content = new StringContent(String.Empty); content.Headers.ContentType = ParserData.HttpRequestMediaType; content.ReadAsHttpRequestMessageAsync(Uri.UriSchemeHttp, ParserData.MinBufferSize - 1); }, "bufferSize", ParserData.MinBufferSize.ToString(), ParserData.MinBufferSize - 1); }
public void UrlHelper_Throws_WhenWrongNameUsed_WithDictionaryValues() { var url = GetUrlHelperForApi(); Assert.ThrowsArgument( () => url.Route("route-doesn't-exist", (IDictionary <string, object>)null), "name", "A route named 'route-doesn't-exist' could not be found in the route collection."); }
public void ParseThrowsMaxDepthExceeded() { // Depth of 'a[b]=1' is 3 IEnumerable <KeyValuePair <string, string> > query = CreateQuery(new KeyValuePair <string, string>("a[b]", "1")); Assert.ThrowsArgument(() => { FormUrlEncodedJson.Parse(query, 2); }, null); // This should succeed Assert.NotNull(FormUrlEncodedJson.Parse(query, 3)); }
public void ReadAsMultipartAsync_DetectsNonMultipartContent(string mediaType, bool isMultipart, string subtype, bool hasSubtype) { StringContent content = new StringContent(String.Empty); content.Headers.ContentType = MediaTypeHeaderValue.Parse(mediaType); if (!isMultipart) { Assert.ThrowsArgument(() => content.ReadAsMultipartAsync().Result, "content"); } }
public void GetMetadataForPropertyInvalidPropertyNameThrows() { // Arrange TestableAssociatedMetadataProvider provider = new TestableAssociatedMetadataProvider(); // Act & Assert Assert.ThrowsArgument( () => provider.GetMetadataForProperty(modelAccessor: null, containerType: typeof(object), propertyName: "BadPropertyName"), "propertyName", "The property System.Object.BadPropertyName could not be found."); }
public void ReadDeeplyNestedObjectThrows() { FormUrlEncodedMediaTypeFormatter formatter = new FormUrlEncodedMediaTypeFormatter() { MaxDepth = 100 }; StringContent content = new StringContent(GetDeeplyNestedObject(125)); content.Headers.ContentType = new MediaTypeHeaderValue("application/x-www-form-urlencoded"); Assert.ThrowsArgument( () => formatter.ReadFromStreamAsync(typeof(JToken), content.ReadAsStreamAsync().Result, content.Headers, null).Result, null); }
public void GetMetadataForPropertyNullOrEmptyPropertyNameThrows() { // Arrange TestableAssociatedMetadataProvider provider = new TestableAssociatedMetadataProvider(); // Act & Assert Assert.ThrowsArgument( () => provider.GetMetadataForProperty(modelAccessor: null, containerType: typeof(object), propertyName: null), "propertyName", "The argument 'propertyName' is null or empty."); Assert.ThrowsArgument( () => provider.GetMetadataForProperty(modelAccessor: null, containerType: typeof(object), propertyName: String.Empty), "propertyName", "The argument 'propertyName' is null or empty."); }
public void ConstructorInvalidRootPath() { Assert.ThrowsArgumentNull(() => { new MultipartFormDataStreamProvider(null); }, "rootPath"); foreach (string path in TestData.NotSupportedFilePaths) { Assert.Throws <NotSupportedException>(() => new MultipartFormDataStreamProvider(path, DefaultBufferSize)); } foreach (string path in TestData.InvalidNonNullFilePaths) { // Note: Path.GetFileName doesn't set the argument name when throwing. Assert.ThrowsArgument(() => { new MultipartFormDataStreamProvider(path, DefaultBufferSize); }, null, allowDerivedExceptions: true); } }
public void MimeMultipartParserConstructorTest(string boundary) { MimeMultipartParser parser = new MimeMultipartParser(boundary, ParserData.MinMessageSize); Assert.NotNull(parser); Assert.ThrowsArgumentGreaterThanOrEqualTo(() => new MimeMultipartParser("-", ParserData.MinMessageSize - 1), "maxMessageSize", ParserData.MinMessageSize.ToString(), ParserData.MinMessageSize - 1); foreach (string empty in TestData.EmptyStrings) { Assert.ThrowsArgument(() => { new MimeMultipartParser(empty, ParserData.MinMessageSize); }, "boundary", allowDerivedExceptions: true); } Assert.ThrowsArgument(() => { new MimeMultipartParser("trailingspace ", ParserData.MinMessageSize); }, "boundary"); Assert.ThrowsArgumentNull(() => { new MimeMultipartParser(null, ParserData.MinMessageSize); }, "boundary"); }
public void CookieState_CtorThrowsOnInvalidName(string name) { Assert.ThrowsArgument(() => new CookieState(name, "value"), "name"); }
public void HttpSelfHostConfiguration_RelativeBaseAddress_Throws() { Assert.ThrowsArgument(() => new HttpSelfHostConfiguration(new Uri("relative", UriKind.Relative)), "baseAddress"); }
public void HttpSelfHostConfiguration_FragmentBaseAddress_Throws() { Assert.ThrowsArgument(() => new HttpSelfHostConfiguration(new Uri("http://localhost#somefragment")), "baseAddress"); }
public void HttpSelfHostConfiguration_InvalidSchemeBaseAddress_Throws() { Assert.ThrowsArgument(() => new HttpSelfHostConfiguration(new Uri("ftp://localhost")), "baseAddress"); }
public void HttpSelfHostConfiguration_RelativeBaseAddressString_Throws() { Assert.ThrowsArgument(() => new HttpSelfHostConfiguration("relative"), "baseAddress"); }
public void HttpSelfHostConfiguration_QueryBaseAddressString_Throws() { Assert.ThrowsArgument(() => new HttpSelfHostConfiguration("http://localhost?somequery"), "baseAddress"); }
public void Constructor_ThrowsOnInvalidRootPath(string invalidPath) { Assert.ThrowsArgument(() => new MultipartFileStreamProvider(invalidPath, ValidBufferSize), null); }
public void CreatePipeline_ThrowsOnInvalidPipeline(IEnumerable <DelegatingHandler> handlers) { Assert.ThrowsArgument(() => HttpClientFactory.CreatePipeline(new HttpClientHandler(), handlers), "handlers"); }
public void CookieState_CtorThrowsOnInvalidValue(string value) { Assert.ThrowsArgument(() => new CookieState("name", value), "value"); }