@@ -173,7 +173,6 @@ def _func(filter1, filter2):
173173 return _func
174174
175175
176- @respx .mock
177176def test_data_filter_defaults (invoke , assert_and_filters_equal ):
178177
179178 result = invoke (["filter" ])
@@ -183,7 +182,6 @@ def test_data_filter_defaults(invoke, assert_and_filters_equal):
183182 assert_and_filters_equal (json .loads (result .output ), empty_filter )
184183
185184
186- @respx .mock
187185def test_data_filter_permission (invoke , assert_and_filters_equal ):
188186 result = invoke (["filter" , "--permission" ])
189187 assert result .exit_code == 0
@@ -197,7 +195,6 @@ def test_data_filter_permission(invoke, assert_and_filters_equal):
197195 assert_and_filters_equal (json .loads (result .output ), expected_filt )
198196
199197
200- @respx .mock
201198def test_data_filter_std_quality (invoke , assert_and_filters_equal ):
202199 result = invoke (["filter" , '--std-quality' ])
203200 assert result .exit_code == 0
@@ -230,7 +227,6 @@ def test_data_filter_asset(asset, expected, invoke, assert_and_filters_equal):
230227 assert_and_filters_equal (json .loads (result .output ), expected_filt )
231228
232229
233- @respx .mock
234230def test_data_filter_date_range_success (invoke , assert_and_filters_equal ):
235231 """Check filter is created correctly and that multiple options results in
236232 multiple filters"""
@@ -262,13 +258,11 @@ def test_data_filter_date_range_success(invoke, assert_and_filters_equal):
262258 assert_and_filters_equal (json .loads (result .output ), expected_filt )
263259
264260
265- @respx .mock
266261def test_data_filter_date_range_invalid (invoke ):
267262 result = invoke (["filter" ] + '--date-range field gt 2021' .split ())
268263 assert result .exit_code == 2
269264
270265
271- @respx .mock
272266@pytest .mark .parametrize ("geom_fixture" ,
273267 [('geom_geojson' ), ('feature_geojson' ),
274268 ('featurecollection_geojson' )])
@@ -296,7 +290,22 @@ def test_data_filter_geom(geom_fixture,
296290 assert_and_filters_equal (json .loads (result .output ), expected_filt )
297291
298292
299- @respx .mock
293+ def test_data_filter_geom_relation (request , invoke ):
294+ geom = request .getfixturevalue ("geom_geojson" )
295+ geom_str = json .dumps (geom )
296+ result = invoke (["filter" , f'--geom={ geom_str } ' , '--geom-relation=disjoint' ])
297+ assert result .exit_code == 0
298+
299+ and_filter = json .loads (result .output )
300+ assert and_filter ["config" ][0 ]["relation" ] == "disjoint"
301+
302+ # --geom-relation is ignored without --geom
303+ result = invoke (["filter" , '--geom-relation=disjoint' ])
304+ assert result .exit_code == 0
305+ and_filter = json .loads (result .output )
306+ assert and_filter ["config" ] == []
307+
308+
300309def test_data_filter_number_in_success (invoke , assert_and_filters_equal ):
301310
302311 result = invoke (["filter" ] + '--number-in field 1' .split () +
@@ -317,14 +326,12 @@ def test_data_filter_number_in_success(invoke, assert_and_filters_equal):
317326 assert_and_filters_equal (json .loads (result .output ), expected_filt )
318327
319328
320- @respx .mock
321329def test_data_filter_number_in_badparam (invoke , assert_and_filters_equal ):
322330
323331 result = invoke (["filter" ] + '--number-in field 1,str' .split ())
324332 assert result .exit_code == 2
325333
326334
327- @respx .mock
328335def test_data_filter_range (invoke , assert_and_filters_equal ):
329336 """Check filter is created correctly, that multiple options results in
330337 multiple filters, and that floats are processed correctly."""
@@ -352,7 +359,6 @@ def test_data_filter_range(invoke, assert_and_filters_equal):
352359 assert_and_filters_equal (json .loads (result .output ), expected_filt )
353360
354361
355- @respx .mock
356362def test_data_filter_string_in (invoke , assert_and_filters_equal ):
357363
358364 result = invoke (["filter" ] + '--string-in field foo' .split () +
@@ -375,7 +381,6 @@ def test_data_filter_string_in(invoke, assert_and_filters_equal):
375381 assert_and_filters_equal (json .loads (result .output ), expected_filt )
376382
377383
378- @respx .mock
379384def test_data_filter_update (invoke , assert_and_filters_equal ):
380385 """Check filter is created correctly and that multiple options results in
381386 multiple filters"""
0 commit comments