/** * Tests whether the maps have the same key/value pairs in the same order */ private boolean testParameterEquivalency(Map<String, String> incomingParams, Map<String, String> expectedParams) { return _transform.transform(incomingParams).toString().equals(_transform.transform(expectedParams).toString()); }
private URI getModifiedUri(URI uri) throws UnsupportedEncodingException, URISyntaxException { Map<String, String> incomingParams = HttpUtilities.stringToUrlParams(uri.getRawQuery(), HttpUtilities.UTF8_CONSTANT); String modifiedIncomingQuery = HttpUtilities.urlParamsToString(_transform.transform(incomingParams), HttpUtilities.UTF8_CONSTANT); return new URI(uri.getScheme(), uri.getUserInfo(), uri.getHost(), uri.getPort(), uri.getPath(), modifiedIncomingQuery, uri.getFragment()); } }
public String getMatchFailureDescriptionForRequests(RecordedHttpRequest incomingRequest, RecordedHttpRequest expectedRequest) { StringBuilder resultBuilder = new StringBuilder("HTTP Headers Mismatch"); if (_transform instanceof MatchRuleBlacklistTransform) { resultBuilder.append(" (with Blacklist)"); } else if (_transform instanceof MatchRuleWhitelistTransform) { resultBuilder.append(" (with Whitelist)"); } resultBuilder.append("%n") .append(String.format("Incoming Headers: %s%n", _transform.transform(multimapToCommaSeparatedMap(incomingRequest.getHeaders())))) .append(String.format("Expected Headers: %s%n", _transform.transform(multimapToCommaSeparatedMap(expectedRequest.getHeaders())))); return resultBuilder.toString(); }
@Override public String getMatchFailureDescriptionForRequests(RecordedHttpRequest incomingRequest, RecordedHttpRequest expectedRequest) { StringBuilder resultBuilder = new StringBuilder("HTTP Body Parameters Mismatch"); if (_transform instanceof MatchRuleBlacklistTransform) { resultBuilder.append(" (with Blacklist)"); } else if (_transform instanceof MatchRuleWhitelistTransform) { resultBuilder.append(" (with Whitelist)"); } try { Map<String, String> incomingParams = getPostParametersFromRequest(incomingRequest); Map<String, String> expectedParams = getPostParametersFromRequest(expectedRequest); resultBuilder.append("%n") .append(String.format("Incoming Parameters: %s%n", _transform.transform(incomingParams))) .append(String.format("Expected Parameters: %s%n", _transform.transform(expectedParams))); } catch (UnsupportedEncodingException e) { logger.error("Caught exception " + e + " while decoding POST parameters"); } return resultBuilder.toString(); } }