DatastoreHelper { public boolean canPreFilterGaeKinds(Query query) { return canPreFilterGaeKinds(query.getFilter()); }  Entity get(KeyDto keyDto); Entity get(Key key); void delete(Key key, String namespace); void deleteOnAllNamespaces(Query query); Iterable<Entity> queryOnAllNamespaces(Query query); Collection<Entity> queryOnAllNamespaces(
            Query query,
            FetchOptions options); Entity querySingleEntity(String namespace, Query query); Iterable<Entity> queryOnNamespace(String namespace, Query query); Iterable<Entity> queryOnNamespace(String namespace, Query query, FetchOptions fetchOptions); void preFilterGaeKinds(Query query); Iterable<Entity> getAllNamespaces(); boolean canPreFilterGaeKinds(Query query);  }
@Test public void canPreFilterGaeKinds_withFilter_returnsTrue(@All(NOT_INEQUALITY) FilterOperation operation) { Query query = new Query(A_KIND); query.setFilter(new Query.FilterPredicate(A_PROPERTY, operation.operator, operation.value)); boolean canPreFilter = datastoreHelper.canPreFilterGaeKinds(query); then(canPreFilter).isTrue(); }
@Test public void canPreFilterGaeKinds_withFilter_returnsFalse(@All(INEQUALITY) FilterOperation operation) { Query query = new Query(A_KIND); query.setFilter(new Query.FilterPredicate(A_PROPERTY, operation.operator, operation.value)); boolean canPreFilter = datastoreHelper.canPreFilterGaeKinds(query); then(canPreFilter).isFalse(); }