Skip to content

Commit

Permalink
Allow args for .bucket
Browse files Browse the repository at this point in the history
fixes #161
  • Loading branch information
honzakral committed May 14, 2015
1 parent 9bef3ab commit 7683c6c
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 6 deletions.
12 changes: 6 additions & 6 deletions elasticsearch_dsl/aggs.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,8 @@ def __getitem__(self, agg_name):
def __setitem__(self, agg_name, agg):
self.aggs[agg_name] = A(agg)

def _agg(self, bucket, name, agg_type, **params):
agg = self[name] = A(agg_type, **params)
def _agg(self, bucket, name, agg_type, *args,**params):
agg = self[name] = A(agg_type, *args, **params)

# For chaining - when creating new buckets return them...
if bucket:
Expand All @@ -68,11 +68,11 @@ def _agg(self, bucket, name, agg_type, **params):
else:
return self._base

def metric(self, name, agg_type, **params):
return self._agg(False, name, agg_type, **params)
def metric(self, name, agg_type, *args, **params):
return self._agg(False, name, agg_type, *args, **params)

def bucket(self, name, agg_type, **params):
return self._agg(True, name, agg_type, **params)
def bucket(self, name, agg_type, *args, **params):
return self._agg(True, name, agg_type, *args, **params)


class Bucket(AggBase, Agg):
Expand Down
15 changes: 15 additions & 0 deletions test_elasticsearch_dsl/test_aggs.py
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,21 @@ def test_filter_can_be_instantiated_using_positional_args():

assert a == aggs.A('filter', filter.F('term', f=42))

def test_filter_aggregation_as_nested_agg():
a = aggs.Terms(field='tags')
a.bucket('filtered', 'filter', filter.F('term', f=42))

assert {
'terms': {'field': 'tags'},
'aggs': {
'filtered': {
'filter': {
'term': {'f': 42}
},
}
}
} == a.to_dict()

def test_filter_aggregation_with_nested_aggs():
a = aggs.Filter(filter.F('term', f=42))
a.bucket('testing', 'terms', field='tags')
Expand Down

0 comments on commit 7683c6c

Please sign in to comment.