private Task <HttpResponseMessage> ProcessMatchAsync(HttpInteraction match) { match.Played = true; var httpRequestMessage = match.Request.ToHttpRequestMessage(); var httpResponseMessage = match.Response.ToHttpRequestMessage(httpRequestMessage); return(Task.FromResult(httpResponseMessage)); }
private HttpInteraction FindMatch(HttpRequest httpRequest) { HttpInteraction[] snapshot = null; lock (_httpInteractions) { snapshot = _httpInteractions.ToArray(); } HttpInteraction match = _requestMatcher.FindMatch(snapshot, httpRequest); return(match); }
public HttpInteraction FindMatch(HttpInteraction[] httpInteractions, HttpRequest request) { HttpInteraction bestMatch = null; foreach (var httpInteraction in httpInteractions) { if (httpInteraction.Played) { continue; } if (!UriEqual(httpInteraction.Request, request)) { continue; } if (!MethodEqual(httpInteraction.Request, request)) { continue; } if (CompareHeaders && !HeadersEqual(httpInteraction.Request, request)) { continue; } if (CompareBody && !BodiesEqual(httpInteraction.Request, request)) { continue; } return(httpInteraction); } return(bestMatch); }