|
2 | 2 |
|
3 | 3 | public static class HttpRequestMessagesCheckExtensions |
4 | 4 | { |
5 | | - /// <summary> |
6 | | - /// Asserts whether requests were made to a given URI based on a pattern. |
7 | | - /// </summary> |
8 | | - /// <param name="check">The implementation that hold all the request messages.</param> |
9 | | - /// <param name="pattern">The uri pattern that is expected.</param> |
10 | | - /// <returns>The <seealso cref="IHttpRequestMessagesCheck"/> for further assertions.</returns> |
11 | | - public static IHttpRequestMessagesCheck WithRequestUri(this IHttpRequestMessagesCheck check, string pattern) => WithRequestUri(check, pattern, null); |
12 | | - |
13 | | - /// <summary> |
14 | | - /// Asserts whether requests were made to a given URI based on a pattern. |
15 | | - /// </summary> |
16 | | - /// <param name="check">The implementation that hold all the request messages.</param> |
17 | | - /// <param name="pattern">The uri pattern that is expected.</param> |
18 | | - /// <param name="expectedNumberOfRequests">The expected number of requests.</param> |
19 | | - /// <returns>The <seealso cref="IHttpRequestMessagesCheck"/> for further assertions.</returns> |
20 | | - public static IHttpRequestMessagesCheck WithRequestUri(this IHttpRequestMessagesCheck check, string pattern, int expectedNumberOfRequests) => WithRequestUri(check, pattern, (int?)expectedNumberOfRequests); |
21 | | - |
22 | | - private static IHttpRequestMessagesCheck WithRequestUri(this IHttpRequestMessagesCheck check, string pattern, int? expectedNumberOfRequests) |
23 | | - { |
24 | | - Guard.ThrowIfNull(check); |
25 | | - Guard.ThrowIfNullOrEmpty(pattern); |
26 | | - |
27 | | - var condition = string.Empty; |
28 | | - if (pattern != "*") |
29 | | - { |
30 | | - condition = $"uri pattern '{pattern}'"; |
31 | | - } |
32 | | - |
33 | | - UriPattern uriPattern = UriPatternParser.Parse(pattern); |
34 | | - |
35 | | - return check.WithFilter(x => x.RequestUri is not null && uriPattern.Matches(x.RequestUri, check.Options.UriPatternMatchingOptions), expectedNumberOfRequests, condition); |
36 | | - } |
37 | | - |
38 | | - /// <summary> |
39 | | - /// Asserts whether requests were made with a given HTTP Method. |
40 | | - /// </summary> |
41 | | - /// <param name="check">The implementation that hold all the request messages.</param> |
42 | | - /// <param name="httpMethod">The <seealso cref="HttpMethod"/> that is expected.</param> |
43 | | - /// <returns>The <seealso cref="IHttpRequestMessagesCheck"/> for further assertions.</returns> |
44 | | - public static IHttpRequestMessagesCheck WithHttpMethod(this IHttpRequestMessagesCheck check, HttpMethod httpMethod) => WithHttpMethod(check, httpMethod, null); |
45 | | - |
46 | | - /// <summary> |
47 | | - /// Asserts whether requests were made with a given HTTP Method. |
48 | | - /// </summary> |
49 | | - /// <param name="check">The implementation that hold all the request messages.</param> |
50 | | - /// <param name="httpMethod">The <seealso cref="HttpMethod"/> that is expected.</param> |
51 | | - /// <param name="expectedNumberOfRequests">The expected number of requests.</param> |
52 | | - /// <returns>The <seealso cref="IHttpRequestMessagesCheck"/> for further assertions.</returns> |
53 | | - public static IHttpRequestMessagesCheck WithHttpMethod(this IHttpRequestMessagesCheck check, HttpMethod httpMethod, int expectedNumberOfRequests) => WithHttpMethod(check, httpMethod, (int?)expectedNumberOfRequests); |
54 | | - |
55 | | - private static IHttpRequestMessagesCheck WithHttpMethod(this IHttpRequestMessagesCheck check, HttpMethod httpMethod, int? expectedNumberOfRequests) |
56 | | - { |
57 | | - Guard.ThrowIfNull(check); |
58 | | - Guard.ThrowIfNull(httpMethod); |
59 | | - |
60 | | - return check.WithFilter(x => x.HasHttpMethod(httpMethod), expectedNumberOfRequests, $"HTTP Method '{httpMethod}'"); |
61 | | - } |
62 | | - |
63 | | - /// <summary> |
64 | | - /// Asserts whether requests were made using a specific HTTP Version. |
65 | | - /// </summary> |
66 | | - /// <param name="check">The implementation that hold all the request messages.</param> |
67 | | - /// <param name="httpVersion">The <seealso cref="System.Net.HttpVersion"/> that is expected.</param> |
68 | | - /// <returns>The <seealso cref="IHttpRequestMessagesCheck"/> for further assertions.</returns> |
69 | | - public static IHttpRequestMessagesCheck WithHttpVersion(this IHttpRequestMessagesCheck check, Version httpVersion) => WithHttpVersion(check, httpVersion, null); |
70 | | - |
71 | | - /// <summary> |
72 | | - /// Asserts whether requests were made using a specific HTTP Version. |
73 | | - /// </summary> |
74 | | - /// <param name="check">The implementation that hold all the request messages.</param> |
75 | | - /// <param name="httpVersion">The <seealso cref="System.Net.HttpVersion"/> that is expected.</param> |
76 | | - /// <param name="expectedNumberOfRequests">The expected number of requests.</param> |
77 | | - /// <returns>The <seealso cref="IHttpRequestMessagesCheck"/> for further assertions.</returns> |
78 | | - public static IHttpRequestMessagesCheck WithHttpVersion(this IHttpRequestMessagesCheck check, Version httpVersion, int expectedNumberOfRequests) => WithHttpVersion(check, httpVersion, (int?)expectedNumberOfRequests); |
79 | | - |
80 | | - private static IHttpRequestMessagesCheck WithHttpVersion(this IHttpRequestMessagesCheck check, Version httpVersion, int? expectedNumberOfRequests) |
81 | | - { |
82 | | - Guard.ThrowIfNull(check); |
83 | | - Guard.ThrowIfNull(httpVersion); |
84 | | - |
85 | | - return check.WithFilter(x => x.HasHttpVersion(httpVersion), expectedNumberOfRequests, $"HTTP Version '{httpVersion}'"); |
86 | | - } |
87 | | - |
88 | 5 | /// <summary> |
89 | 6 | /// Asserts whether requests were made with a specific header name. Values are ignored. |
90 | 7 | /// </summary> |
@@ -211,84 +128,6 @@ private static IHttpRequestMessagesCheck WithContentHeader(this IHttpRequestMess |
211 | 128 | return check.WithFilter(x => x.HasContentHeader(headerName, headerValue), expectedNumberOfRequests, $"content header '{headerName}' and value '{headerValue}'"); |
212 | 129 | } |
213 | 130 |
|
214 | | - /// <summary> |
215 | | - /// Asserts whether requests were made with a specific header name. Values are ignored. |
216 | | - /// </summary> |
217 | | - /// <param name="check">The implementation that hold all the request messages.</param> |
218 | | - /// <param name="headerName">The name of the header that is expected.</param> |
219 | | - /// <returns>The <seealso cref="IHttpRequestMessagesCheck"/> for further assertions.</returns> |
220 | | - public static IHttpRequestMessagesCheck WithHeader(this IHttpRequestMessagesCheck check, string headerName) => WithHeader(check, headerName, (int?)null); |
221 | | - |
222 | | - /// <summary> |
223 | | - /// Asserts whether requests were made with a specific header name. Values are ignored. |
224 | | - /// </summary> |
225 | | - /// <param name="check">The implementation that hold all the request messages.</param> |
226 | | - /// <param name="headerName">The name of the header that is expected.</param> |
227 | | - /// <param name="expectedNumberOfRequests">The expected number of requests.</param> |
228 | | - /// <returns>The <seealso cref="IHttpRequestMessagesCheck"/> for further assertions.</returns> |
229 | | - public static IHttpRequestMessagesCheck WithHeader(this IHttpRequestMessagesCheck check, string headerName, int expectedNumberOfRequests) => WithHeader(check, headerName, (int?)expectedNumberOfRequests); |
230 | | - |
231 | | - private static IHttpRequestMessagesCheck WithHeader(this IHttpRequestMessagesCheck check, string headerName, int? expectedNumberOfRequests) |
232 | | - { |
233 | | - Guard.ThrowIfNull(check); |
234 | | - Guard.ThrowIfNullOrEmpty(headerName); |
235 | | - |
236 | | - return check.WithFilter(x => x.HasHeader(headerName), expectedNumberOfRequests, $"header '{headerName}'"); |
237 | | - } |
238 | | - |
239 | | - /// <summary> |
240 | | - /// Asserts whether requests were made with a specific header name and value. |
241 | | - /// </summary> |
242 | | - /// <param name="check">The implementation that hold all the request messages.</param> |
243 | | - /// <param name="headerName">The name of the header that is expected.</param> |
244 | | - /// <param name="headerValue">The value of the expected header, supports wildcards.</param> |
245 | | - /// <returns>The <seealso cref="IHttpRequestMessagesCheck"/> for further assertions.</returns> |
246 | | - public static IHttpRequestMessagesCheck WithHeader(this IHttpRequestMessagesCheck check, string headerName, string headerValue) => WithHeader(check, headerName, headerValue, null); |
247 | | - |
248 | | - /// <summary> |
249 | | - /// Asserts whether requests were made with a specific header name and value. |
250 | | - /// </summary> |
251 | | - /// <param name="check">The implementation that hold all the request messages.</param> |
252 | | - /// <param name="headerName">The name of the header that is expected.</param> |
253 | | - /// <param name="headerValue">The value of the expected header, supports wildcards.</param> |
254 | | - /// <param name="expectedNumberOfRequests">The expected number of requests.</param> |
255 | | - /// <returns>The <seealso cref="IHttpRequestMessagesCheck"/> for further assertions.</returns> |
256 | | - public static IHttpRequestMessagesCheck WithHeader(this IHttpRequestMessagesCheck check, string headerName, string headerValue, int expectedNumberOfRequests) => WithHeader(check, headerName, headerValue, (int?)expectedNumberOfRequests); |
257 | | - |
258 | | - private static IHttpRequestMessagesCheck WithHeader(this IHttpRequestMessagesCheck check, string headerName, string headerValue, int? expectedNumberOfRequests) |
259 | | - { |
260 | | - Guard.ThrowIfNull(check); |
261 | | - Guard.ThrowIfNullOrEmpty(headerName); |
262 | | - Guard.ThrowIfNullOrEmpty(headerValue); |
263 | | - |
264 | | - return check.WithFilter(x => x.HasHeader(headerName, headerValue), expectedNumberOfRequests, $"header '{headerName}' and value '{headerValue}'"); |
265 | | - } |
266 | | - |
267 | | - /// <summary> |
268 | | - /// Asserts whether requests were made with specific content. |
269 | | - /// </summary> |
270 | | - /// <param name="check">The implementation that hold all the request messages.</param> |
271 | | - /// <param name="pattern">The expected content, supports wildcards.</param> |
272 | | - /// <returns>The <seealso cref="IHttpRequestMessagesCheck"/> for further assertions.</returns> |
273 | | - public static IHttpRequestMessagesCheck WithContent(this IHttpRequestMessagesCheck check, string pattern) => WithContent(check, pattern, null); |
274 | | - |
275 | | - /// <summary> |
276 | | - /// Asserts whether requests were made with specific content. |
277 | | - /// </summary> |
278 | | - /// <param name="check">The implementation that hold all the request messages.</param> |
279 | | - /// <param name="pattern">The expected content, supports wildcards.</param> |
280 | | - /// <param name="expectedNumberOfRequests">The expected number of requests.</param> |
281 | | - /// <returns>The <seealso cref="IHttpRequestMessagesCheck"/> for further assertions.</returns> |
282 | | - public static IHttpRequestMessagesCheck WithContent(this IHttpRequestMessagesCheck check, string pattern, int expectedNumberOfRequests) => WithContent(check, pattern, (int?)expectedNumberOfRequests); |
283 | | - |
284 | | - private static IHttpRequestMessagesCheck WithContent(this IHttpRequestMessagesCheck check, string pattern, int? expectedNumberOfRequests) |
285 | | - { |
286 | | - Guard.ThrowIfNull(check); |
287 | | - Guard.ThrowIfNull(pattern); |
288 | | - |
289 | | - return check.WithFilter(x => x.HasContent(pattern), expectedNumberOfRequests, $"content '{pattern}'"); |
290 | | - } |
291 | | - |
292 | 131 | /// <summary> |
293 | 132 | /// Asserts whether requests are made with specific json content. |
294 | 133 | /// </summary> |
|
0 commit comments