/// <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);
        }
Esempio n. 9
0
        /// <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);
        }
Esempio n. 10
0
        /// <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);
        }
Esempio n. 11
0
 /// <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)));
 }
Esempio n. 12
0
        /// <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);
        }