|
|
@@ -127,7 +127,7 @@ public class CartesianCentroidAggregatorTests extends AggregatorTestCase {
|
|
|
CartesianPoint expectedCentroid = new CartesianPoint(0, 0);
|
|
|
CartesianPoint[] multiValues = new CartesianPoint[numUniqueCartesianPoints];
|
|
|
for (int i = 0; i < multiValues.length; i++) {
|
|
|
- Point point = ShapeTestUtils.randomPoint(false);
|
|
|
+ Point point = ESTestCase.randomValueOtherThanMany(this::extremePoint, () -> ShapeTestUtils.randomPoint(false));
|
|
|
multiValues[i] = new CartesianPoint(point.getX(), point.getY());
|
|
|
}
|
|
|
final CartesianPoint[] multiVal = new CartesianPoint[2];
|
|
|
@@ -177,10 +177,10 @@ public class CartesianCentroidAggregatorTests extends AggregatorTestCase {
|
|
|
double coordinate = (Math.abs(a) + Math.abs(b)) / 2;
|
|
|
if (coordinate < 1.0) {
|
|
|
// When dealing with small numbers, we use an absolute tolerance, similar to the geo case
|
|
|
- return 1e-7D;
|
|
|
+ return 1e-6D;
|
|
|
} else {
|
|
|
// For large numbers we use a tolerance based on a faction of the expected value
|
|
|
- double tolerance = coordinate / 1e7D;
|
|
|
+ double tolerance = coordinate / 1e6D;
|
|
|
// For very large numbers the floating point error is worse for large counts
|
|
|
return tolerance > 1e25 ? tolerance * count : tolerance;
|
|
|
}
|