diff --git a/x-pack/protocol/src/test/java/org/elasticsearch/protocol/xpack/graph/GraphExploreResponseTests.java b/x-pack/protocol/src/test/java/org/elasticsearch/protocol/xpack/graph/GraphExploreResponseTests.java index b776df25a1aae..220e5e469e640 100644 --- a/x-pack/protocol/src/test/java/org/elasticsearch/protocol/xpack/graph/GraphExploreResponseTests.java +++ b/x-pack/protocol/src/test/java/org/elasticsearch/protocol/xpack/graph/GraphExploreResponseTests.java @@ -26,6 +26,8 @@ import org.elasticsearch.test.AbstractXContentTestCase; import java.io.IOException; +import java.util.Arrays; +import java.util.Comparator; import java.util.HashMap; import java.util.Map; import java.util.function.Predicate; @@ -105,8 +107,17 @@ protected void assertEqualInstances( GraphExploreResponse expectedInstance, Gra Connection[] expectedConns = expectedInstance.getConnections().toArray(new Connection[0]); assertArrayEquals(expectedConns, newConns); - Vertex[] newVertices = newInstance.getVertices().toArray(new Vertex[0]); + //Sort the vertices lists before equality test (map insertion sequences can cause order differences) + Comparator comparator = new Comparator() { + @Override + public int compare(Vertex o1, Vertex o2) { + return o1.getId().toString().compareTo(o2.getId().toString()); + } + }; + Vertex[] newVertices = newInstance.getVertices().toArray(new Vertex[0]); Vertex[] expectedVertices = expectedInstance.getVertices().toArray(new Vertex[0]); + Arrays.sort(newVertices, comparator); + Arrays.sort(expectedVertices, comparator); assertArrayEquals(expectedVertices, newVertices); ShardOperationFailedException[] newFailures = newInstance.getShardFailures();