public function testAggregationWrappingOnUnrestrictedField()
 {
     $field = new Field('foo', Mapping::TYPE_STRING, ['private' => false]);
     $agg = ['terms' => 'bar'];
     $wrapped = AggregationHelper::wrapPrivateFieldAggregation($field, $agg);
     $this->assertEquals($agg, $wrapped);
 }
 private function getAggregationQueryParams(SearchEngineOptions $options)
 {
     $aggs = [];
     // We always want a collection facet right now
     $collection_facet_agg = array();
     $collection_facet_agg['terms']['field'] = 'collection_name';
     $aggs['Collection_Name'] = $collection_facet_agg;
     // We always want a base facet right now
     $base_facet_agg = array();
     $base_facet_agg['terms']['field'] = 'databox_name';
     $aggs['Base_Name'] = $base_facet_agg;
     // We always want a type facet right now
     $base_facet_agg = array();
     $base_facet_agg['terms']['field'] = 'type';
     $aggs['Type_Name'] = $base_facet_agg;
     $structure = $this->context_factory->getLimitedStructure($options);
     foreach ($structure->getFacetFields() as $name => $field) {
         // 2015-05-26 (mdarse) Removed databox filtering.
         // It was already done by the ACL filter in the query scope, so no
         // document that shouldn't be displayed can go this far.
         $agg = [];
         $agg['terms']['field'] = $field->getIndexField(true);
         $agg['terms']['size'] = $field->getFacetValuesLimit();
         $aggs[$name] = AggregationHelper::wrapPrivateFieldAggregation($field, $agg);
     }
     return $aggs;
 }