Fix/search 1916 (#436) (#475)

* [SEARCH-1916]
Modified test in order to check if empty label is inserted in json

* [SEARCH-1916]
Add annotation to allow empty labels in facet buckets

(cherry picked from commit 21dd2fb066)
This commit is contained in:
eliaporciani
2019-12-20 15:45:25 +01:00
committed by GitHub
parent 54ebad0fce
commit 5af08756cb
2 changed files with 9 additions and 1 deletions

View File

@@ -27,6 +27,8 @@ package org.alfresco.rest.api.search.context;
import java.util.List; import java.util.List;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import org.alfresco.repo.search.impl.solr.facet.facetsresponse.GenericBucket; import org.alfresco.repo.search.impl.solr.facet.facetsresponse.GenericBucket;
/** /**
@@ -55,6 +57,7 @@ public class FacetFieldContext
public static class Bucket public static class Bucket
{ {
@JsonInclude(JsonInclude.Include.NON_NULL)
private final String label; private final String label;
private final String filterQuery; private final String filterQuery;
private final int count; private final int count;

View File

@@ -176,7 +176,11 @@ public class SearchQuerySerializerTests
{ {
ExecutionResult exec1 = new ExecutionResult(new Farmer("180"),null); ExecutionResult exec1 = new ExecutionResult(new Farmer("180"),null);
FacetFieldContext ffc = new FacetFieldContext("theLabel", Arrays.asList(new Bucket("b1", "name:b1", 23, "displayText1"), new Bucket("b2", null, 34, "displayText2"))); FacetFieldContext ffc = new FacetFieldContext("theLabel",
Arrays.asList(
new Bucket("b1", "name:b1", 23, "displayText1"),
new Bucket("b2", null, 34, "displayText2"),
new Bucket("", null, 42, "displayText3")));
SearchContext searchContext = new SearchContext(23l,null, Arrays.asList(new FacetQueryContext("f1", "creator:bob", 15), new FacetQueryContext("f2", null, 20)), SearchContext searchContext = new SearchContext(23l,null, Arrays.asList(new FacetQueryContext("f1", "creator:bob", 15), new FacetQueryContext("f2", null, 20)),
Arrays.asList(ffc), Arrays.asList(ffc),
new SpellCheckContext("aFlag", Arrays.asList("bish", "bash")), null); new SpellCheckContext("aFlag", Arrays.asList("bish", "bash")), null);
@@ -190,6 +194,7 @@ public class SearchQuerySerializerTests
assertTrue("There must 'facetsFields' json output", out.contains("\"facetsFields\":[{\"label\":\"theLabel\",\"buckets\"")); assertTrue("There must 'facetsFields' json output", out.contains("\"facetsFields\":[{\"label\":\"theLabel\",\"buckets\""));
assertTrue("There must 'bucket1' json output", out.contains("{\"label\":\"b1\",\"filterQuery\":\"name:b1\",\"count\":23,\"display\":\"displayText1\"}")); assertTrue("There must 'bucket1' json output", out.contains("{\"label\":\"b1\",\"filterQuery\":\"name:b1\",\"count\":23,\"display\":\"displayText1\"}"));
assertTrue("There must 'bucket2' json output", out.contains("{\"label\":\"b2\",\"count\":34,\"display\":\"displayText2\"}")); assertTrue("There must 'bucket2' json output", out.contains("{\"label\":\"b2\",\"count\":34,\"display\":\"displayText2\"}"));
assertTrue("There must 'bucket3' json output", out.contains("{\"label\":\"\",\"count\":42,\"display\":\"displayText3\"}"));
searchContext = new SearchContext(-1, null, null,null, null, null); searchContext = new SearchContext(-1, null, null,null, null, null);
coll = CollectionWithPagingInfo.asPaged(null, Arrays.asList(exec1), false, 2, null, searchContext); coll = CollectionWithPagingInfo.asPaged(null, Arrays.asList(exec1), false, 2, null, searchContext);