Test fix - Graph vertices could appear in different orders based on map insertion sequence (#33709)
Solved by sorting the vertices arrays before comparison Closes #33686
This commit is contained in:
parent
c86e2d5211
commit
140c3bb61c
|
@ -26,6 +26,8 @@ import org.elasticsearch.common.xcontent.XContentParser;
|
|||
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 @@ public class GraphExploreResponseTests extends AbstractXContentTestCase< GraphEx
|
|||
Connection[] expectedConns = expectedInstance.getConnections().toArray(new Connection[0]);
|
||||
assertArrayEquals(expectedConns, newConns);
|
||||
|
||||
//Sort the vertices lists before equality test (map insertion sequences can cause order differences)
|
||||
Comparator<Vertex> comparator = new Comparator<Vertex>() {
|
||||
@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();
|
||||
|
|
Loading…
Reference in New Issue