Fix deprecation HTTP tests
This commit adapts the deprecation HTTP tests for the RFC 7234 specification compliant warning headers.
This commit is contained in:
parent
73fb945980
commit
fe47af4e4b
|
@ -23,6 +23,7 @@ import org.apache.http.HttpEntity;
|
|||
import org.apache.http.entity.ContentType;
|
||||
import org.apache.http.entity.StringEntity;
|
||||
import org.elasticsearch.client.Response;
|
||||
import org.elasticsearch.common.logging.DeprecationLogger;
|
||||
import org.elasticsearch.common.logging.LoggerMessageFormat;
|
||||
import org.elasticsearch.common.settings.Setting;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
|
@ -39,10 +40,12 @@ import java.util.List;
|
|||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
import static org.elasticsearch.rest.RestStatus.OK;
|
||||
import static org.elasticsearch.common.logging.DeprecationLogger.WARNING_HEADER_PATTERN;
|
||||
import static org.elasticsearch.http.TestDeprecationHeaderRestAction.TEST_DEPRECATED_SETTING_TRUE1;
|
||||
import static org.elasticsearch.http.TestDeprecationHeaderRestAction.TEST_DEPRECATED_SETTING_TRUE2;
|
||||
import static org.elasticsearch.http.TestDeprecationHeaderRestAction.TEST_NOT_DEPRECATED_SETTING;
|
||||
import static org.elasticsearch.rest.RestStatus.OK;
|
||||
import static org.elasticsearch.test.hamcrest.RegexMatcher.matches;
|
||||
import static org.hamcrest.Matchers.containsString;
|
||||
import static org.hamcrest.Matchers.equalTo;
|
||||
import static org.hamcrest.Matchers.hasItem;
|
||||
|
@ -167,13 +170,20 @@ public class DeprecationHttpIT extends HttpSmokeTestCase {
|
|||
}
|
||||
for (Setting<?> setting : settings) {
|
||||
if (setting.isDeprecated()) {
|
||||
headerMatchers.add(containsString(LoggerMessageFormat.format("[{}] setting was deprecated", (Object)setting.getKey())));
|
||||
headerMatchers.add(equalTo(
|
||||
"[" + setting.getKey() + "] setting was deprecated in Elasticsearch and will be removed in a future release! " +
|
||||
"See the breaking changes documentation for the next major version."));
|
||||
}
|
||||
}
|
||||
|
||||
assertThat(deprecatedWarnings, hasSize(headerMatchers.size()));
|
||||
for (final String deprecatedWarning : deprecatedWarnings) {
|
||||
assertThat(deprecatedWarning, matches(WARNING_HEADER_PATTERN.pattern()));
|
||||
}
|
||||
final List<String> actualWarningValues =
|
||||
deprecatedWarnings.stream().map(DeprecationLogger::extractWarningValueFromWarningHeader).collect(Collectors.toList());
|
||||
for (Matcher<String> headerMatcher : headerMatchers) {
|
||||
assertThat(deprecatedWarnings, hasItem(headerMatcher));
|
||||
assertThat(actualWarningValues, hasItem(headerMatcher));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue