Enhanced the implementation of OSM views GeoTIFF import functionality

This commit is contained in:
Tareq Al-Ahdal
2022-07-24 19:04:23 +08:00
committed by Sarah Hoffmann
parent c85b74497b
commit ac467c7a2d
11 changed files with 69 additions and 61 deletions

View File

@@ -69,7 +69,7 @@ class TestCliImportWithDb:
assert cf_mock.called > 1
for mock in mocks:
assert mock.called == 1, "Mock '{}' not called".format(mock.func_name)
assert mock.called > 0, "Mock '{}' not called".format(mock.func_name)
def test_import_continue_load_data(self, mock_func_factory):

View File

@@ -24,7 +24,7 @@ class TestRefresh:
@pytest.mark.parametrize("command,func", [
('address-levels', 'load_address_levels_from_config'),
('wiki-data', 'import_wikipedia_articles'),
('osm-views', 'import_osm_views_geotiff')
('osm-views', 'import_osm_views_geotiff'),
('importance', 'recompute_importance'),
('website', 'setup_website'),
])
@@ -32,7 +32,7 @@ class TestRefresh:
func_mock = mock_func_factory(nominatim.tools.refresh, func)
assert self.call_nominatim('refresh', '--' + command) == 0
assert func_mock.called == 1
assert func_mock.called > 0
def test_refresh_word_count(self):
@@ -72,21 +72,17 @@ class TestRefresh:
assert self.call_nominatim('refresh', '--wiki-data') == 1
def test_refresh_osm_views_geotiff_file_not_found(self, monkeypatch):
monkeypatch.setenv('NOMINATIM_OSM_VIEWS_DATA_PATH', 'gjoiergjeroi345Q')
def test_refresh_osm_views_geotiff_file_not_found(self):
assert self.call_nominatim('refresh', '--osm-views') == 1
def test_refresh_importance_computed_after_wiki_and_osm_views_import(self, monkeypatch):
def test_refresh_importance_computed_after_wiki_import(self, monkeypatch):
calls = []
monkeypatch.setattr(nominatim.tools.refresh, 'import_wikipedia_articles',
lambda *args, **kwargs: calls.append('import') or 0)
monkeypatch.setattr(nominatim.tools.refresh, 'import_osm_views_geotiff',
lambda *args, **kwargs: calls.append('import') or 0)
monkeypatch.setattr(nominatim.tools.refresh, 'recompute_importance',
lambda *args, **kwargs: calls.append('update'))
assert self.call_nominatim('refresh', '--importance', '--wiki-data', '--osm-views') == 0
assert self.call_nominatim('refresh', '--importance', '--wiki-data') == 0
assert calls == ['import', 'update']

View File

@@ -21,7 +21,6 @@ NOMINATIM_DROP_TABLES = [
'address_levels',
'location_area', 'location_area_country', 'location_area_large_100',
'location_road_1',
'osmviews'
'place', 'planet_osm_nodes', 'planet_osm_rels', 'planet_osm_ways',
'search_name_111',
'wikipedia_article', 'wikipedia_redirect'

View File

@@ -34,17 +34,6 @@ def test_refresh_import_wikipedia(dsn, src_dir, table_factory, temp_db_cursor, r
assert temp_db_cursor.table_rows('wikipedia_redirect') > 0
@pytest.mark.parametrize("replace", (True, False))
def test_refresh_import_osm_views_geotiff(dsn, src_dir, table_factory, temp_db_cursor, replace):
if replace:
table_factory('osmviews')
# use the small osm views GeoTIFF file for the API testdb
assert refresh.import_osm_views_geotiff(dsn, src_dir / 'test' / 'testdb') == 0
assert temp_db_cursor.table_rows('osmviews') > 0
def test_recompute_importance(placex_table, table_factory, temp_db_conn, temp_db_cursor):
temp_db_cursor.execute("""CREATE OR REPLACE FUNCTION compute_importance(extratags HSTORE,
country_code varchar(2),