File tree Expand file tree Collapse file tree 2 files changed +21
-0
lines changed
Expand file tree Collapse file tree 2 files changed +21
-0
lines changed Original file line number Diff line number Diff line change @@ -20,6 +20,7 @@ class AggregationAreaViewSet(viewsets.ReadOnlyModelViewSet):
2020 Regular aggregation Area model view endpoint.
2121 """
2222 serializer_class = AggregationAreaSimplifiedSerializer
23+ filter_backends = (filters .DjangoFilterBackend , )
2324 filter_fields = ('aggregationlayer' , )
2425
2526 def get_queryset (self ):
@@ -61,6 +62,7 @@ class AggregationAreaValueViewSet(viewsets.ReadOnlyModelViewSet):
6162 Regular aggregation Area model view endpoint.
6263 """
6364 serializer_class = AggregationAreaValueSerializer
65+ filter_backends = (filters .DjangoFilterBackend , )
6466 filter_fields = ('aggregationlayer' , )
6567
6668 def initial (self , request , * args , ** kwargs ):
Original file line number Diff line number Diff line change @@ -144,6 +144,25 @@ def test_value_count_for_raster_with_missing_tile(self):
144144 # Assert all data values are empty
145145 self .assertEqual (result , [{}, {}])
146146
147+ def test_filter_by_layer (self ):
148+ url = reverse ('aggregationareavalue-list' )
149+
150+ # Setup request with fromula that will multiply the rasterlayer by itself
151+ response = self .client .get (url + '?layers=a={0}&formula=a&zoom=4&aggregationlayer={1}' .format (
152+ self .rasterlayer .id ,
153+ self .agglayer .id ,
154+ ))
155+
156+ count = len (json .loads (response .content .strip ().decode ()))
157+ self .assertEqual (count , self .agglayer .aggregationarea_set .count ())
158+
159+ response = self .client .get (url + '?layers=a={0}&formula=a&zoom=4&aggregationlayer={1}' .format (
160+ self .rasterlayer .id ,
161+ 1234 , # Not existing agglayer id.
162+ ))
163+ count = len (json .loads (response .content .strip ().decode ()))
164+ self .assertEqual (0 , count )
165+
147166 def test_aggregation_null_values (self ):
148167 response = self .client .get (
149168 self .url + '?layers=a={0}&formula=99*(a==NULL)%2B2*(~a==2)' .format (self .rasterlayer .id )
You can’t perform that action at this time.
0 commit comments