public static void GetRequestElementsByMap(string baseUrl, string mapFile, out Dictionary <string, string> headers, out string body, out string bodyFormatted, out string method, out string url) { headers = new Dictionary <string, string>(); body = null; bodyFormatted = null; var fileContent = File.ReadAllText(mapFile); var stub = StubMapping.buildFrom(fileContent); method = stub.getRequest().getMethod().ToString(); var baseUri = new Uri(baseUrl); Uri myUri = new Uri(baseUri, stub.getRequest().getUrl()); url = myUri.ToString(); var iterator = stub.getRequest().getHeaders()?.keySet()?.iterator(); if (iterator != null) { while (iterator.hasNext()) { var name = (string)iterator.next(); var value = (com.github.tomakehurst.wiremock.matching.MultiValuePattern)stub.getRequest().getHeaders().get(name); var compareName = value.getName(); headers[name] = value.getExpected(); } } var iteratorCookie = stub.getRequest().getCookies()?.keySet()?.iterator(); if (iteratorCookie != null && !headers.Any((KeyValuePair <string, string> f) => f.Key.ToLower() == "cookies")) { headers["Cookies"] = stub.getRequest().getCookies().ToString(); } var bodyPatterns = stub.getRequest().getBodyPatterns()?.toArray(); if (bodyPatterns != null) { foreach (var bodyPattern in bodyPatterns) { if (bodyPattern is com.github.tomakehurst.wiremock.matching.StringValuePattern converted) { body = converted.getExpected(); if (converted.getName()?.ToLower() == "equaltojson") { bodyFormatted = Helper.FormatToJson(body, false); } else if (converted.getName()?.ToLower() == "equaltoxml") { bodyFormatted = Helper.FormatToXml(body, false); } break; } } } }
public void loadMappingsInto(StubMappings stubMappings) { RequestPattern requestPattern = RequestPatternBuilder.newRequestPattern(RequestMethod.ANY, com.github.tomakehurst.wiremock.client.WireMock.anyUrl()).build(); ResponseDefinition responseDef = com.github.tomakehurst.wiremock.client.ResponseDefinitionBuilder.responseDefinition() .proxiedFrom(baseUrl) .build(); StubMapping proxyBasedMapping = new StubMapping(requestPattern, responseDef); proxyBasedMapping.setPriority(new java.lang.Integer(10)); stubMappings.addMapping(proxyBasedMapping); }