File tree Expand file tree Collapse file tree 2 files changed +14
-3
lines changed
Expand file tree Collapse file tree 2 files changed +14
-3
lines changed Original file line number Diff line number Diff line change @@ -92,7 +92,7 @@ class FilterGroup(BaseModel):
9292
9393class FilterGroupV2 (BaseModel ):
9494 subgroupClause : str = "AND"
95- subgroups : List [Union [FilterGroup , FilterGroupV2 ]]
95+ subgroups : List [Union [FilterGroupV2 , FilterGroup ]]
9696
9797
9898class Query (Model ):
@@ -373,7 +373,7 @@ def subquery(self, subgroup_query: EventQuery):
373373 self .groups .append (
374374 FilterGroupV2 (
375375 subgroupClause = subgroup_query .group_clause ,
376- subgroups = [ x for x in subgroup_query .groups ] ,
376+ subgroups = subgroup_query .groups ,
377377 )
378378 )
379379 return self
Original file line number Diff line number Diff line change @@ -360,7 +360,7 @@ def test_date_range_filter_creates_correct_filter(start_timestamp):
360360 assert q .groups .pop () == expected
361361
362362
363- def test_subgroup_creates_expected_filter_subgroup ():
363+ def test_subquery_creates_expected_filter_subgroup ():
364364 subgroup_q = (
365365 EventQuery ()
366366 .matches_any ()
@@ -377,3 +377,14 @@ def test_subgroup_creates_expected_filter_subgroup():
377377 assert q .group_clause == "AND"
378378 assert q .groups [0 ].subgroupClause == "OR"
379379 assert q .groups [0 ].subgroups [0 ] == expected
380+
381+
382+ def test_subquery_handles_nested_subquery ():
383+ q = EventQuery ().subquery (
384+ EventQuery ().subquery (EventQuery ().equals ("term" , "value" ))
385+ )
386+ assert isinstance (q .groups [0 ], FilterGroupV2 )
387+ assert isinstance (q .groups [0 ].subgroups [0 ], FilterGroupV2 )
388+ assert isinstance (q .groups [0 ].subgroups [0 ].subgroups [0 ], FilterGroup )
389+ assert q .groups [0 ].subgroups [0 ].subgroups [0 ].filters [0 ].term == "term"
390+ assert q .groups [0 ].subgroups [0 ].subgroups [0 ].filters [0 ].value == "value"
You can’t perform that action at this time.
0 commit comments