Search in sources :

Example 11 with During

use of org.opengis.filter.temporal.During in project ddf by codice.

the class OpenSearchFilterVisitorTest method testMultipleFilters.

/**
 * Test that the {@link OpenSearchFilterVisitorObject} is populated with multiple filters.
 * Combines the {@link Filter}s from {@link #testDuringDates} and {@link #testContains()}.
 */
@Test
public void testMultipleFilters() {
    During duringFilter = (During) geotoolsFilterBuilder.attribute(TEMPORAL_ATTRIBUTE_NAME).during().dates(START_DATE, END_DATE);
    Contains containsFilter = (Contains) geotoolsFilterBuilder.attribute(SPATIAL_ATTRIBUTE_NAME).containing().wkt(WKT_POLYGON);
    And andFilter = geotoolsFilterBuilder.allOf(duringFilter, containsFilter);
    OpenSearchFilterVisitorObject openSearchFilterVisitorObject = new OpenSearchFilterVisitorObject();
    openSearchFilterVisitorObject.setCurrentNest(NestedTypes.AND);
    OpenSearchFilterVisitorObject result = (OpenSearchFilterVisitorObject) openSearchFilterVisitor.visit(andFilter, openSearchFilterVisitorObject);
    assertThat(result.getTemporalSearch(), allOf(is(notNullValue()), hasProperty("startDate", is(START_DATE)), hasProperty("endDate", is(END_DATE))));
    assertThat(result.getGeometrySearches(), contains(hasToString(is(WKT_POLYGON))));
}
Also used : And(org.opengis.filter.And) Contains(org.opengis.filter.spatial.Contains) During(org.opengis.filter.temporal.During) Test(org.junit.Test)

Example 12 with During

use of org.opengis.filter.temporal.During in project ddf by codice.

the class FilterBuilderTest method during.

@Test
public void during() {
    FilterVisitor visitor = spy(new DefaultFilterVisitor() {
    });
    FilterBuilder builder = new GeotoolsFilterBuilder();
    Filter filter = builder.attribute(FOO_ATTRIBUTE).during().dates(new Date(), new Date(System.currentTimeMillis() + 10000000));
    filter.accept(visitor, null);
    filter = builder.attribute(FOO_ATTRIBUTE).during().next(1000);
    filter.accept(visitor, null);
    filter = builder.attribute(FOO_ATTRIBUTE).during().last(1000);
    filter.accept(visitor, null);
    filter = builder.attribute(FOO_ATTRIBUTE).is().during().dates(new Date(), new Date(System.currentTimeMillis() + 10000000));
    filter.accept(visitor, null);
    filter = builder.attribute(FOO_ATTRIBUTE).is().during().next(1000);
    filter.accept(visitor, null);
    filter = builder.attribute(FOO_ATTRIBUTE).is().during().last(1000);
    filter.accept(visitor, null);
    InOrder inOrder = inOrder(visitor);
    inOrder.verify(visitor, times(6)).visit(isA(During.class), any());
}
Also used : InOrder(org.mockito.InOrder) DefaultFilterVisitor(org.geotools.filter.visitor.DefaultFilterVisitor) DefaultFilterVisitor(org.geotools.filter.visitor.DefaultFilterVisitor) FilterVisitor(org.opengis.filter.FilterVisitor) Filter(org.opengis.filter.Filter) FilterBuilder(ddf.catalog.filter.FilterBuilder) GeotoolsFilterBuilder(ddf.catalog.filter.proxy.builder.GeotoolsFilterBuilder) GeotoolsFilterBuilder(ddf.catalog.filter.proxy.builder.GeotoolsFilterBuilder) Date(java.util.Date) During(org.opengis.filter.temporal.During) Test(org.junit.Test)

Aggregations

Test (org.junit.Test)12 During (org.opengis.filter.temporal.During)12 Date (java.util.Date)3 TOverlapsImpl (org.geotools.filter.temporal.TOverlapsImpl)3 TOverlaps (org.opengis.filter.temporal.TOverlaps)3 And (org.opengis.filter.And)2 Contains (org.opengis.filter.spatial.Contains)2 FilterBuilder (ddf.catalog.filter.FilterBuilder)1 GeotoolsFilterBuilder (ddf.catalog.filter.proxy.builder.GeotoolsFilterBuilder)1 TemporalFilter (ddf.catalog.impl.filter.TemporalFilter)1 QName (javax.xml.namespace.QName)1 CswQueryFactoryTest (org.codice.ddf.spatial.ogc.csw.catalog.endpoint.CswQueryFactoryTest)1 NameImpl (org.geotools.feature.NameImpl)1 AttributeExpressionImpl (org.geotools.filter.AttributeExpressionImpl)1 DefaultFilterVisitor (org.geotools.filter.visitor.DefaultFilterVisitor)1 InOrder (org.mockito.InOrder)1 Filter (org.opengis.filter.Filter)1 FilterVisitor (org.opengis.filter.FilterVisitor)1 PropertyIsGreaterThan (org.opengis.filter.PropertyIsGreaterThan)1 Expression (org.opengis.filter.expression.Expression)1