Skip to content

Commit e89f847

Browse files
committed
Merge pull request #881 from Philo/develop
re #880 - Ensures that a nested filter consisting of only a filter does ...
2 parents cf38792 + 7c992ed commit e89f847

File tree

2 files changed

+13
-5
lines changed

2 files changed

+13
-5
lines changed

Diff for: src/Nest/DSL/Filter/NestedFilterDescriptor.cs

+6-3
Original file line numberDiff line numberDiff line change
@@ -59,9 +59,12 @@ public class NestedFilterDescriptor<T> : FilterBase, INestedFilter where T : cla
5959
bool IFilter.IsConditionless
6060
{
6161
get
62-
{
63-
return ((INestedFilter)this).Query == null
64-
|| ((INestedFilter)this).Query.IsConditionless;
62+
{
63+
return (((INestedFilter)this).Query == null
64+
|| ((INestedFilter)this).Query.IsConditionless)
65+
&& (((INestedFilter)this).Filter == null
66+
|| ((INestedFilter)this).Filter.IsConditionless)
67+
;
6568
}
6669
}
6770

Diff for: src/Tests/Nest.Tests.Unit/Search/Filter/ConditionLess/ConditionLessTests.cs

+7-2
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ private void DoConditionlessFilter(Func<FilterDescriptor<ElasticsearchProject>,
2828

2929
this.JsonEquals(s, System.Reflection.MethodInfo.GetCurrentMethod(), "MatchAll");
3030
}
31+
3132
private void DoNonConditionlessFilter(Func<FilterDescriptor<ElasticsearchProject>, FilterContainer> filter)
3233
{
3334
var s = new SearchDescriptor<ElasticsearchProject>()
@@ -146,8 +147,12 @@ public void MissingTest()
146147
public void NestedTest()
147148
{
148149
this.DoConditionlessFilter(f => f.Nested(nf=>nf.Query(q=>q.Term(string.Empty, string.Empty))));
149-
this.DoConditionlessFilter(f => f.Nested(null));
150-
}
150+
this.DoConditionlessFilter(f => f.Nested(null));
151+
this.DoConditionlessFilter(f => f.Nested(nf => nf.Filter(q => q.Term(string.Empty, string.Empty))));
152+
153+
this.DoNonConditionlessFilter(f => f.Nested(nf => nf.Query(q => q.Term("myfield", "myvalue"))));
154+
this.DoNonConditionlessFilter(f => f.Nested(nf => nf.Filter(q => q.Term("myfield", "myvalue"))));
155+
}
151156

152157

153158
[Test]

0 commit comments

Comments
 (0)