2020
2121
2222class TestTileGroupingFunctions (unittest .TestCase ):
23+ PROVIDERS = ["mapillary" , "panoramax" ]
24+
2325 @classmethod
2426 def setUpClass (cls ):
2527 with open (
@@ -182,7 +184,7 @@ def test_download_and_process_tile_success(self, mock_get, mock_vt2geojson):
182184
183185 polygon = wkt .loads ("POLYGON ((-1 -1, -1 1, 1 1, 1 -1, -1 -1))" )
184186
185- result = download_and_process_tile (row , polygon , {})
187+ result = download_and_process_tile (row , polygon , self . PROVIDERS [ 0 ], {})
186188 self .assertIsInstance (result , pd .DataFrame )
187189 self .assertEqual (len (result ), 1 )
188190 self .assertEqual (result ["geometry" ][0 ].wkt , "POINT (0 0)" )
@@ -194,7 +196,9 @@ def test_download_and_process_tile_failure(self, mock_get):
194196 mock_response .status_code = 500
195197 mock_get .return_value = mock_response
196198
197- result = download_and_process_tile (self .row , self .test_polygon , {})
199+ result = download_and_process_tile (
200+ self .row , self .test_polygon , self .PROVIDERS [0 ], {}
201+ )
198202
199203 self .assertIsNone (result )
200204
@@ -219,7 +223,9 @@ def test_download_and_process_tile_spatial_filtering(self, mock_get_mapillary_da
219223
220224 mock_get_mapillary_data .return_value = pd .DataFrame (data )
221225
222- metadata = download_and_process_tile (self .row , self .test_polygon , {})
226+ metadata = download_and_process_tile (
227+ self .row , self .test_polygon , self .PROVIDERS [0 ], {}
228+ )
223229
224230 metadata = metadata .drop_duplicates ()
225231 self .assertEqual (len (metadata ), len (inside_points ))
@@ -230,7 +236,9 @@ def test_download_and_process_tile_spatial_filtering(self, mock_get_mapillary_da
230236 def test_coordinate_download_with_failures (self , mock_parallelized_processing ):
231237 mock_parallelized_processing .return_value = pd .DataFrame ()
232238
233- metadata = coordinate_download (self .test_polygon , self .level , {})
239+ metadata = coordinate_download (
240+ self .test_polygon , self .level , self .PROVIDERS [0 ], {}
241+ )
234242
235243 self .assertTrue (metadata .empty )
236244
@@ -305,45 +313,55 @@ def test_filter_missing_columns(self):
305313
306314 @patch ("mapswipe_workers.utils.process_mapillary.coordinate_download" )
307315 def test_get_image_metadata (self , mock_coordinate_download ):
308- mock_coordinate_download .return_value = self .fixture_df
309- result = get_image_metadata (self .fixture_data )
310- self .assertIsInstance (result , dict )
311- self .assertIn ("ids" , result )
312- self .assertIn ("geometries" , result )
316+ for provider in self .PROVIDERS :
317+ with self .subTest (provider = provider ):
318+ mock_coordinate_download .return_value = self .fixture_df
319+ result = get_image_metadata (self .fixture_data , provider = provider )
320+ self .assertIsInstance (result , dict )
321+ self .assertIn ("ids" , result )
322+ self .assertIn ("geometries" , result )
313323
314324 @patch ("mapswipe_workers.utils.process_mapillary.coordinate_download" )
315325 def test_get_image_metadata_empty_response (self , mock_coordinate_download ):
316- df = self .fixture_df .copy ()
317- df = df .drop (df .index )
318- mock_coordinate_download .return_value = df
326+ for provider in self .PROVIDERS :
327+ with self .subTest (provider = provider ):
328+ df = self .fixture_df .copy ()
329+ df = df .drop (df .index )
330+ mock_coordinate_download .return_value = df
319331
320- with self .assertRaises (CustomError ):
321- get_image_metadata (self .fixture_data )
332+ with self .assertRaises (CustomError ):
333+ get_image_metadata (self .fixture_data , provider = provider )
322334
323335 @patch ("mapswipe_workers.utils.process_mapillary.filter_results" )
324336 @patch ("mapswipe_workers.utils.process_mapillary.coordinate_download" )
325337 def test_get_image_metadata_size_restriction (
326338 self , mock_coordinate_download , mock_filter_results
327339 ):
328- mock_df = pd .DataFrame ({"id" : range (1 , 100002 ), "geometry" : range (1 , 100002 )})
329- mock_coordinate_download .return_value = mock_df
330- with self .assertRaises (CustomError ):
331- get_image_metadata (self .fixture_data )
340+ for provider in self .PROVIDERS :
341+ with self .subTest (provider = provider ):
342+ mock_df = pd .DataFrame (
343+ {"id" : range (1 , 100002 ), "geometry" : range (1 , 100002 )}
344+ )
345+ mock_coordinate_download .return_value = mock_df
346+ with self .assertRaises (CustomError ):
347+ get_image_metadata (self .fixture_data , provider = provider )
332348
333349 @patch ("mapswipe_workers.utils.process_mapillary.coordinate_download" )
334350 def test_get_image_metadata_drop_duplicates (self , mock_coordinate_download ):
335- test_df = pd .DataFrame (
336- {
337- "id" : [1 , 2 , 2 , 3 , 4 , 4 , 5 ],
338- "geometry" : ["a" , "b" , "b" , "c" , "d" , "d" , "e" ],
339- }
340- )
341- mock_coordinate_download .return_value = test_df
342- return_dict = get_image_metadata (self .fixture_data )
343-
344- return_df = pd .DataFrame (return_dict )
345-
346- self .assertNotEqual (len (return_df ), len (test_df ))
351+ for provider in self .PROVIDERS :
352+ with self .subTest (provider = provider ):
353+ test_df = pd .DataFrame (
354+ {
355+ "id" : [1 , 2 , 2 , 3 , 4 , 4 , 5 ],
356+ "geometry" : ["a" , "b" , "b" , "c" , "d" , "d" , "e" ],
357+ }
358+ )
359+ mock_coordinate_download .return_value = test_df
360+ return_dict = get_image_metadata (self .fixture_data , provider = provider )
361+
362+ return_df = pd .DataFrame (return_dict )
363+
364+ self .assertNotEqual (len (return_df ), len (test_df ))
347365
348366
349367if __name__ == "__main__" :
0 commit comments