/// <summary> /// Adds a backend definition /// </summary> /// <param name="handler">The source handler</param> /// <param name="method">The HTTP method to match</param> /// <param name="url">The URL (absolute or relative, may contain * wildcards) to match</param> /// <returns>The <see cref="T:MockedRequest"/> instance</returns> public static MockedRequest When(this MockHttpMessageHandler handler, HttpMethod method, string url) { var message = new MockedRequest(url); message.With(new MethodMatcher(method)); handler.AddBackendDefinition(message); return message; }
/// <summary> /// Requires that the request match any of the specified set of matchers /// </summary> /// <param name="source">The source mocked request</param> /// <param name="matchers">A list of matchers to evaluate</param> /// <returns>The <see cref="T:MockedRequest"/> instance</returns> public static MockedRequest WithAny(this MockedRequest source, params IMockedRequestMatcher[] matchers) { return(source.With(new AnyMatcher(matchers))); }
/// <summary> /// Requires that the request match any of the specified set of matchers /// </summary> /// <param name="source">The source mocked request</param> /// <param name="matchers">A list of matchers to evaluate</param> /// <returns>The <see cref="T:MockedRequest"/> instance</returns> public static MockedRequest WithAny(this MockedRequest source, IEnumerable <IMockedRequestMatcher> matchers) { return(source.With(new AnyMatcher(matchers))); }
/// <summary> /// Includes requests contain a set of headers /// </summary> /// <param name="source">The source mocked request</param> /// <param name="headers">A string containing headers as they would appear in the HTTP request</param> /// <returns>The <see cref="T:MockedRequest"/> instance</returns> public static MockedRequest WithHeaders(this MockedRequest source, string headers) { source.With(new HeadersMatcher(headers)); return(source); }
/// <summary> /// Includes requests contain a set of headers /// </summary> /// <param name="source">The source mocked request</param> /// <param name="headers">A list of HTTP header name/value pairs</param> /// <returns>The <see cref="T:MockedRequest"/> instance</returns> public static MockedRequest WithHeaders(this MockedRequest source, IEnumerable <KeyValuePair <string, string> > headers) { source.With(new HeadersMatcher(headers)); return(source); }
/// <summary> /// Includes requests with content that contains a particular value /// </summary> /// <param name="source">The source mocked request</param> /// <param name="partialContent">The content to match against the request</param> /// <returns>The <see cref="T:MockedRequest"/> instance</returns> public static MockedRequest WithPartialContent(this MockedRequest source, string partialContent) { source.With(new PartialContentMatcher(partialContent)); return(source); }
/// <summary> /// Includes requests with particular content /// </summary> /// <param name="source">The source mocked request</param> /// <param name="content">The content to match against the request</param> /// <returns>The <see cref="T:MockedRequest"/> instance</returns> public static MockedRequest WithContent(this MockedRequest source, string content) { source.With(new ContentMatcher(content)); return(source); }
/// <summary> /// Includes requests contain a set of query string values /// </summary> /// <param name="source">The source mocked request</param> /// <param name="values">A formatted query string containing key/value pairs to match</param> /// <returns>The <see cref="T:MockedRequest"/> instance</returns> public static MockedRequest WithFormData(this MockedRequest source, string values) { source.With(new FormDataMatcher(values)); return(source); }
/// <summary> /// Includes requests that contain all of the specified query string values and no others /// </summary> /// <param name="source">The source mocked request</param> /// <param name="values">A formatted query string containing key/value pairs to match</param> /// <returns>The <see cref="T:MockedRequest"/> instance</returns> public static MockedRequest WithExactQueryString(this MockedRequest source, string values) { source.With(new QueryStringMatcher(values, true)); return(source); }
/// <summary> /// Includes requests that contain all of the specified query string values and no others /// </summary> /// <param name="source">The source mocked request</param> /// <param name="values">The query string key/value pairs to match</param> /// <returns>The <see cref="T:MockedRequest"/> instance</returns> public static MockedRequest WithExactQueryString(this MockedRequest source, IEnumerable <KeyValuePair <string, string> > values) { source.With(new QueryStringMatcher(values, true)); return(source); }
/// <summary> /// Constraints the request using custom logic /// </summary> /// <param name="source">The source mocked request</param> /// <param name="matcher">The delegate that will be used to constrain the request</param> /// <returns>The <see cref="T:MockedRequest"/> instance</returns> public static MockedRequest With(this MockedRequest source, Func <HttpRequestMessage, bool> matcher) { return(source.With(new CustomMatcher(matcher))); }
/// <summary> /// Includes requests contain a set of query string values /// </summary> /// <param name="source">The source mocked request</param> /// <param name="values">The query string key/value pairs to match</param> /// <returns>The <see cref="T:MockedRequest"/> instance</returns> public static MockedRequest WithFormData(this MockedRequest source, IEnumerable <KeyValuePair <string, string> > values) { source.With(new FormDataMatcher(values)); return(source); }