- @pytest.mark.parametrize("command,func", [
- ('address-levels', 'load_address_levels_from_config'),
- ('wiki-data', 'import_wikipedia_articles'),
- ('importance', 'recompute_importance'),
- ('website', 'setup_website'),
- ])
- def test_refresh_command(self, mock_func_factory, command, func):
- func_mock = mock_func_factory(nominatim.tools.refresh, func)
-
- assert self.call_nominatim('refresh', '--' + command) == 0
- assert func_mock.called == 1
-
-
- def test_refresh_word_count(self):
- assert self.call_nominatim('refresh', '--word-count') == 0
- assert self.tokenizer_mock.update_statistics_called
-
-
- def test_refresh_postcodes(self, mock_func_factory, place_table):
- func_mock = mock_func_factory(nominatim.tools.postcodes, 'update_postcodes')
- idx_mock = mock_func_factory(nominatim.indexer.indexer.Indexer, 'index_postcodes')
-
- assert self.call_nominatim('refresh', '--postcodes') == 0
- assert func_mock.called == 1
- assert idx_mock.called == 1
-
- def test_refresh_create_functions(self, mock_func_factory):
- func_mock = mock_func_factory(nominatim.tools.refresh, 'create_functions')
-
- assert self.call_nominatim('refresh', '--functions') == 0
- assert func_mock.called == 1
- assert self.tokenizer_mock.update_sql_functions_called
-
-
- 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, 'recompute_importance',
- lambda *args, **kwargs: calls.append('update'))