Fix wrong URL encoding in watcher HTTP client (#45894)
The test assumption was calling the wrong method resulting in a URL encoding before returning the data. Closes #44970
This commit is contained in:
parent
53f70ee996
commit
98c32c7846
|
@ -334,12 +334,13 @@ public class HttpClient implements Closeable {
|
|||
String part = pathParts[i];
|
||||
boolean isLast = i == pathParts.length - 1;
|
||||
if (Strings.isEmpty(part) == false) {
|
||||
String appendPart = part;
|
||||
unescapedPathParts.add(URLDecoder.decode(part, StandardCharsets.UTF_8.name()));
|
||||
// if the passed URL ends with a slash, adding an empty string to the
|
||||
// unescaped paths will ensure the slash will be added back
|
||||
boolean appendSlash = isPathEndsWithSlash && isLast;
|
||||
if (appendSlash) {
|
||||
appendPart += "/";
|
||||
unescapedPathParts.add("");
|
||||
}
|
||||
unescapedPathParts.add(URLDecoder.decode(appendPart, StandardCharsets.UTF_8.name()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -751,7 +751,7 @@ public class HttpClientTests extends ESTestCase {
|
|||
private void assertCreateUri(String uri, String expectedPath) {
|
||||
final HttpRequest request = HttpRequest.builder().fromUrl(uri).build();
|
||||
final Tuple<HttpHost, URI> tuple = HttpClient.createURI(request);
|
||||
assertThat(tuple.v2().getPath(), is(expectedPath));
|
||||
assertThat(tuple.v2().getRawPath(), is(expectedPath));
|
||||
}
|
||||
|
||||
public static ClusterService mockClusterService() {
|
||||
|
|
Loading…
Reference in New Issue