Search in sources :

Example 1 with StandardValidator

use of org.opensearch.geometry.utils.StandardValidator in project OpenSearch by opensearch-project.

the class CircleTests method testInitValidation.

public void testInitValidation() {
    GeometryValidator validator = new GeographyValidator(true);
    IllegalArgumentException ex = expectThrows(IllegalArgumentException.class, () -> validator.validate(new Circle(20, 10, -1)));
    assertEquals("Circle radius [-1.0] cannot be negative", ex.getMessage());
    ex = expectThrows(IllegalArgumentException.class, () -> validator.validate(new Circle(20, 100, 1)));
    assertEquals("invalid latitude 100.0; must be between -90.0 and 90.0", ex.getMessage());
    ex = expectThrows(IllegalArgumentException.class, () -> validator.validate(new Circle(200, 10, 1)));
    assertEquals("invalid longitude 200.0; must be between -180.0 and 180.0", ex.getMessage());
    ex = expectThrows(IllegalArgumentException.class, () -> new StandardValidator(false).validate(new Circle(200, 10, 1, 20)));
    assertEquals("found Z value [1.0] but [ignore_z_value] parameter is [false]", ex.getMessage());
    new StandardValidator(true).validate(new Circle(200, 10, 1, 20));
}
Also used : GeometryValidator(org.opensearch.geometry.utils.GeometryValidator) GeographyValidator(org.opensearch.geometry.utils.GeographyValidator) StandardValidator(org.opensearch.geometry.utils.StandardValidator)

Example 2 with StandardValidator

use of org.opensearch.geometry.utils.StandardValidator in project OpenSearch by opensearch-project.

the class MultiPointTests method testValidation.

public void testValidation() {
    IllegalArgumentException ex = expectThrows(IllegalArgumentException.class, () -> new StandardValidator(false).validate(new MultiPoint(Collections.singletonList(new Point(2, 1, 3)))));
    assertEquals("found Z value [3.0] but [ignore_z_value] parameter is [false]", ex.getMessage());
    new StandardValidator(true).validate(new MultiPoint(Collections.singletonList(new Point(2, 1, 3))));
}
Also used : StandardValidator(org.opensearch.geometry.utils.StandardValidator)

Example 3 with StandardValidator

use of org.opensearch.geometry.utils.StandardValidator in project OpenSearch by opensearch-project.

the class MultiPolygonTests method testValidation.

public void testValidation() {
    IllegalArgumentException ex = expectThrows(IllegalArgumentException.class, () -> new StandardValidator(false).validate(new MultiPolygon(Collections.singletonList(new Polygon(new LinearRing(new double[] { 3, 4, 5, 3 }, new double[] { 1, 2, 3, 1 }, new double[] { 1, 2, 3, 1 }))))));
    assertEquals("found Z value [1.0] but [ignore_z_value] parameter is [false]", ex.getMessage());
    new StandardValidator(true).validate(new MultiPolygon(Collections.singletonList(new Polygon(new LinearRing(new double[] { 3, 4, 5, 3 }, new double[] { 1, 2, 3, 1 }, new double[] { 1, 2, 3, 1 })))));
}
Also used : StandardValidator(org.opensearch.geometry.utils.StandardValidator)

Example 4 with StandardValidator

use of org.opensearch.geometry.utils.StandardValidator in project OpenSearch by opensearch-project.

the class PointTests method testInitValidation.

public void testInitValidation() {
    GeometryValidator validator = new GeographyValidator(true);
    IllegalArgumentException ex = expectThrows(IllegalArgumentException.class, () -> validator.validate(new Point(10, 100)));
    assertEquals("invalid latitude 100.0; must be between -90.0 and 90.0", ex.getMessage());
    ex = expectThrows(IllegalArgumentException.class, () -> validator.validate(new Point(500, 10)));
    assertEquals("invalid longitude 500.0; must be between -180.0 and 180.0", ex.getMessage());
    ex = expectThrows(IllegalArgumentException.class, () -> new StandardValidator(false).validate(new Point(2, 1, 3)));
    assertEquals("found Z value [3.0] but [ignore_z_value] parameter is [false]", ex.getMessage());
    new StandardValidator(true).validate(new Point(2, 1, 3));
}
Also used : GeometryValidator(org.opensearch.geometry.utils.GeometryValidator) GeographyValidator(org.opensearch.geometry.utils.GeographyValidator) StandardValidator(org.opensearch.geometry.utils.StandardValidator)

Example 5 with StandardValidator

use of org.opensearch.geometry.utils.StandardValidator in project OpenSearch by opensearch-project.

the class RectangleTests method testInitValidation.

public void testInitValidation() {
    GeometryValidator validator = new GeographyValidator(true);
    IllegalArgumentException ex = expectThrows(IllegalArgumentException.class, () -> validator.validate(new Rectangle(2, 3, 100, 1)));
    assertEquals("invalid latitude 100.0; must be between -90.0 and 90.0", ex.getMessage());
    ex = expectThrows(IllegalArgumentException.class, () -> validator.validate(new Rectangle(200, 3, 2, 1)));
    assertEquals("invalid longitude 200.0; must be between -180.0 and 180.0", ex.getMessage());
    ex = expectThrows(IllegalArgumentException.class, () -> validator.validate(new Rectangle(2, 3, 1, 2)));
    assertEquals("max y cannot be less than min x", ex.getMessage());
    ex = expectThrows(IllegalArgumentException.class, () -> validator.validate(new Rectangle(2, 3, 2, 1, 5, Double.NaN)));
    assertEquals("only one z value is specified", ex.getMessage());
    ex = expectThrows(IllegalArgumentException.class, () -> new StandardValidator(false).validate(new Rectangle(50, 10, 40, 30, 20, 60)));
    assertEquals("found Z value [20.0] but [ignore_z_value] parameter is [false]", ex.getMessage());
    new StandardValidator(true).validate(new Rectangle(50, 10, 40, 30, 20, 60));
}
Also used : GeometryValidator(org.opensearch.geometry.utils.GeometryValidator) GeographyValidator(org.opensearch.geometry.utils.GeographyValidator) StandardValidator(org.opensearch.geometry.utils.StandardValidator)

Aggregations

StandardValidator (org.opensearch.geometry.utils.StandardValidator)10 GeographyValidator (org.opensearch.geometry.utils.GeographyValidator)5 GeometryValidator (org.opensearch.geometry.utils.GeometryValidator)5