From bb9094b5101aa3be54551f0dc5e72c3f432223cb Mon Sep 17 00:00:00 2001 From: Jason Tedor Date: Mon, 10 Sep 2018 11:49:55 -0400 Subject: [PATCH] Enable not wiping cluster settings after REST test In some cases we want to skip wiping cluster settings after a REST test. For example, one use-case would be in the full cluster restart tests where want to test cluster settings before and after a full cluster restart. If we wipe the cluster settings before the restart, then it would not be possible to assert on them after the restart. --- .../elasticsearch/test/rest/ESRestTestCase.java | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/test/framework/src/main/java/org/elasticsearch/test/rest/ESRestTestCase.java b/test/framework/src/main/java/org/elasticsearch/test/rest/ESRestTestCase.java index ecb965040f87b..9d47c4e24a90b 100644 --- a/test/framework/src/main/java/org/elasticsearch/test/rest/ESRestTestCase.java +++ b/test/framework/src/main/java/org/elasticsearch/test/rest/ESRestTestCase.java @@ -236,6 +236,16 @@ protected boolean preserveTemplatesUponCompletion() { return false; } + /** + * Controls whether or not to preserve cluster settings upon completion of the test. The default implementation is to remove all cluster + * settings. + * + * @return true if cluster settings should be preserved and otherwise false + */ + protected boolean preserveClusterSettings() { + return false; + } + /** * Returns whether to preserve the repositories on completion of this test. * Defaults to not preserving repos. See also @@ -295,7 +305,11 @@ private void wipeCluster() throws IOException { } wipeSnapshots(); - wipeClusterSettings(); + + // wipe cluster settings + if (preserveClusterSettings() == false) { + wipeClusterSettings(); + } } /**