Skip to content

Commit 9e6464e

Browse files
authored
Test for duplicate transport versions (#130494)
We used to have an assertion during transport version loading that duplicate ids were not found, but it appears to have been lost in refactorings. This commit adds a test to ensure duplicate ids do not occur. relates #130486
1 parent 9b8c0d3 commit 9e6464e

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

server/src/test/java/org/elasticsearch/TransportVersionTests.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
import org.elasticsearch.test.TransportVersionUtils;
1414

1515
import java.lang.reflect.Modifier;
16+
import java.util.List;
1617
import java.util.Set;
1718
import java.util.regex.Matcher;
1819
import java.util.regex.Pattern;
@@ -207,4 +208,16 @@ public void testToString() {
207208
assertEquals("2000099", TransportVersion.fromId(2_00_00_99).toString());
208209
assertEquals("5000099", TransportVersion.fromId(5_00_00_99).toString());
209210
}
211+
212+
public void testDuplicateConstants() {
213+
List<TransportVersion> tvs = TransportVersion.getAllVersions();
214+
TransportVersion previous = tvs.get(0);
215+
for (int i = 1; i < tvs.size(); i++) {
216+
TransportVersion next = tvs.get(i);
217+
if (next.id() == previous.id()) {
218+
throw new AssertionError("Duplicate transport version id: " + next.id());
219+
}
220+
previous = next;
221+
}
222+
}
210223
}

0 commit comments

Comments
 (0)