public void initialize() { SnowCrashCLR.parse(source.API.Replace("\r", string.Empty), out _blueprint, out _result); var resource = _blueprint.GetResourceGroupsCs().FirstOrDefault().GetResourcesCs().FirstOrDefault(); _example = resource.GetActionsCs().FirstOrDefault().GetTransactionExamplesCs().FirstOrDefault(); }
private bool MatchExample(HttpRequest request, TransactionExample example) { var payloads = example.GetRequestsCs(); if (!payloads.Any() || request.HttpMethod == "GET") { return(true); } var matchingPayloads = from payload in payloads let isMatch = MatchPayload(request, payload) where isMatch select payload; return(matchingPayloads.Any()); }
private void WriteResponse(HttpResponse actualResponse, TransactionExample example) { actualResponse.Clear(); var exampleResponse = example.GetResponsesCs().First(); // write status code if (!string.IsNullOrWhiteSpace(exampleResponse.name)) { int statusCode; if (int.TryParse(exampleResponse.name, out statusCode)) { actualResponse.StatusCode = statusCode; } } // write headers exampleResponse .GetHeadersCs() .ForEach(h => actualResponse.AppendHeader(h.Item1, h.Item2)); //write body actualResponse.Write(exampleResponse.body); }