def test_build_aggregation_query_with_category(self):
        query = "eu gene"
        multi_match_fields = [1,2]
        category = "locus"
        
        es_query = build_es_search_query(query, multi_match_fields)

        aggs = {}
        
        for c in self.category_filters[category]:
            aggs[c[1]] = {'terms': {'field': c[1] + '.raw', 'size': 999}}
        
        self.assertEqual({
            'query': es_query,
            'size': 0,
            'aggs': aggs
        }, build_aggregation_query(es_query, category, self.category_filters))
 def test_build_aggregation_query_with_emtpy_category(self):
     query = "eu gene"
     multi_match_fields = [1,2]
     category = ""
     
     es_query = build_es_search_query(query, multi_match_fields)
     
     self.assertEqual({
         'query': es_query,
         'size': 0,
         'aggs': {
             'categories': {
                 'terms': {'field': 'category', 'size': 50}
             },
             'feature_type': {
                 'terms': {'field': 'feature_type', 'size': 50}
             }
         }
     }, build_aggregation_query(es_query, category, self.category_filters))