1
0
Эх сурвалжийг харах

Merge pull request #14483 from jasontedor/cluster-block-to-string-dangling-comma

Fix dangling comma in ClusterBlock#toString
Jason Tedor 10 жил өмнө
parent
commit
b2c098630e

+ 3 - 1
core/src/main/java/org/elasticsearch/cluster/block/ClusterBlock.java

@@ -155,8 +155,10 @@ public class ClusterBlock implements Streamable, ToXContent {
     public String toString() {
         StringBuilder sb = new StringBuilder();
         sb.append(id).append(",").append(description).append(", blocks ");
+        String delimiter = "";
         for (ClusterBlockLevel level : levels) {
-            sb.append(level.name()).append(",");
+            sb.append(delimiter).append(level.name());
+            delimiter = ",";
         }
         return sb.toString();
     }

+ 13 - 0
core/src/test/java/org/elasticsearch/cluster/block/ClusterBlockTests.java

@@ -28,7 +28,9 @@ import org.elasticsearch.test.ESTestCase;
 import java.util.EnumSet;
 
 import static org.elasticsearch.test.VersionUtils.randomVersion;
+import static org.hamcrest.CoreMatchers.endsWith;
 import static org.hamcrest.CoreMatchers.equalTo;
+import static org.hamcrest.CoreMatchers.not;
 
 public class ClusterBlockTests extends ESTestCase {
     public void testSerialization() throws Exception {
@@ -63,4 +65,15 @@ public class ClusterBlockTests extends ESTestCase {
             assertArrayEquals(result.levels().toArray(), clusterBlock.levels().toArray());
         }
     }
+
+    public void testToStringDanglingComma() {
+        EnumSet<ClusterBlockLevel> levels = EnumSet.noneOf(ClusterBlockLevel.class);
+        int nbLevels = randomIntBetween(1, ClusterBlockLevel.values().length);
+        for (int j = 0; j < nbLevels; j++) {
+            levels.add(randomFrom(ClusterBlockLevel.values()));
+        }
+        ClusterBlock clusterBlock = new ClusterBlock(randomInt(), "cluster block #" + randomInt(), randomBoolean(),
+                randomBoolean(), randomFrom(RestStatus.values()), levels);
+        assertThat(clusterBlock.toString(), not(endsWith(",")));
+    }
 }