Merge branch 'fix/SEARCH-1346_facetMinCount' into 'master'

Fix/search 1346 facet min count

See merge request tas/alfresco-tas-restapi-test!101
This commit is contained in:
Alessandro Benedetti
2019-01-08 16:12:37 +00:00
2 changed files with 16 additions and 20 deletions
@@ -31,6 +31,9 @@ import org.springframework.http.HttpStatus;
import org.testng.Assert;
import org.testng.annotations.Test;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.core.Is.is;
/**
* Faceted Range Search Query for numeric range
* {
@@ -239,28 +242,20 @@ public class FacetRangeSearchTest extends AbstractSearchTest
response.assertThat().entriesListIsNotEmpty();
response.getContext().assertThat().field("facets").isNotEmpty();
RestGenericFacetResponseModel facetResponseModel = response.getContext().getFacets().get(0);
List<RestGenericBucketModel> buckets = facetResponseModel.getBuckets();
assertThat(buckets.size(),is(1));
RestGenericBucketModel bucket = facetResponseModel.getBuckets().get(0);
bucket.assertThat().field("label").is("[2015-09-29T10:45:15.729Z - 2016-07-05T10:45:15.729Z)");
bucket.assertThat().field("filterQuery").is("created:[\"2015-09-29T10:45:15.729Z\" TO \"2016-07-05T10:45:15.729Z\">");
RestGenericBucketModel bucket = buckets.get(0);
bucket.assertThat().field("label").is("[2015-09-29T10:45:15.729Z - 2017-04-11T10:45:15.729Z)");
bucket.assertThat().field("filterQuery").is("created:[\"2015-09-29T10:45:15.729Z\" TO \"2017-04-11T10:45:15.729Z\">");
bucket.getMetrics().get(0).assertThat().field("value").is("{count=1}");
Map<String, String> info = (Map<String, String>) bucket.getBucketInfo();
Assert.assertEquals(info.get("start"),"2015-09-29T10:45:15.729Z");
Assert.assertEquals(info.get("end"),"2016-07-05T10:45:15.729Z");
Assert.assertEquals(info.get("end"),"2017-04-11T10:45:15.729Z");
Assert.assertNull(info.get("count"),"1");
Assert.assertEquals(info.get("startInclusive"),"true");
Assert.assertEquals(info.get("endInclusive"),"false");
bucket = facetResponseModel.getBuckets().get(1);
bucket.assertThat().field("label").is("[2016-07-05T10:45:15.729Z - 2017-04-11T10:45:15.729Z]");
bucket.assertThat().field("filterQuery").is("created:[\"2016-07-05T10:45:15.729Z\" TO \"2017-04-11T10:45:15.729Z\"]");
bucket.getMetrics().get(0).assertThat().field("value").is("{count=0}");
info = (Map<String, String>) bucket.getBucketInfo();
Assert.assertEquals(info.get("start"),"2016-07-05T10:45:15.729Z");
Assert.assertEquals(info.get("end"),"2017-04-11T10:45:15.729Z");
Assert.assertNull(info.get("count"),"0");
Assert.assertEquals(info.get("startInclusive"),"true");
Assert.assertEquals(info.get("endInclusive"),"true");
}
@Test(groups = { TestGroup.REST_API, TestGroup.SEARCH, TestGroup.ASS_1 })
@@ -18,8 +18,8 @@
*/
package org.alfresco.rest.search;
import static org.junit.Assert.assertTrue;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@@ -167,6 +167,9 @@ public class PivotFacetedSearchTest extends AbstractSearchTest
public void searchWithRangePivoting() throws Exception
{
SearchRequest query = carsQuery();
String endDate = LocalDateTime.now()
.format(DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss'Z'")); //the car document is created at runtime, so to include it in range facets end date must be now
Pagination pagination = new Pagination();
pagination.setMaxItems(2);
@@ -181,7 +184,7 @@ public class PivotFacetedSearchTest extends AbstractSearchTest
RestRequestRangesModel facetRangeModel = new RestRequestRangesModel();
facetRangeModel.setField("created");
facetRangeModel.setStart("2015-09-29T10:45:15.729Z");
facetRangeModel.setEnd("2016-09-29T10:45:15.729Z");
facetRangeModel.setEnd(endDate);
facetRangeModel.setGap("+280DAY");
facetRangeModel.setLabel("aRange");
List<RestRequestRangesModel> ranges = new ArrayList<RestRequestRangesModel>();
@@ -204,8 +207,6 @@ public class PivotFacetedSearchTest extends AbstractSearchTest
RestGenericBucketModel bucket = facetResponseModel.getBuckets().get(0);
RestGenericFacetResponseModel rangeResponse = bucket.getFacets().get(0);
rangeResponse.assertThat().field("type").is("range");
assertTrue(rangeResponse.getBuckets().size()>0);
}
private void assertPivotResponse(SearchResponse response, String field, String alabel) throws Exception