X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/671af4cff24ed671bed414160a73ea3541907d29..c70dfccacac90a90bfc193f49262abe7505d7d75:/test/python/cli/test_cli.py diff --git a/test/python/cli/test_cli.py b/test/python/cli/test_cli.py index d42df50a..a538049e 100644 --- a/test/python/cli/test_cli.py +++ b/test/python/cli/test_cli.py @@ -2,7 +2,7 @@ # # This file is part of Nominatim. (https://nominatim.org) # -# Copyright (C) 2024 by the Nominatim developer community. +# Copyright (C) 2025 by the Nominatim developer community. # For a full list of authors see the git log. """ Tests for command line interface wrapper. @@ -11,7 +11,6 @@ These tests just check that the various command line parameters route to the correct functionality. They use a lot of monkeypatching to avoid executing the actual functions. """ -import importlib import pytest import nominatim_db.indexer.indexer @@ -28,6 +27,7 @@ def test_cli_help(cli_call, capsys): captured = capsys.readouterr() assert captured.out.startswith('usage:') + def test_cli_version(cli_call, capsys): """ Running nominatim tool --version prints a version string. """ @@ -46,7 +46,6 @@ class TestCliWithDb: # Make sure tools.freeze.is_frozen doesn't report database as frozen. Monkeypatching failed table_factory('place') - @pytest.mark.parametrize("name,oid", [('file', 'foo.osm'), ('diff', 'foo.osc')]) def test_cli_add_data_file_command(self, cli_call, mock_func_factory, name, oid): mock_run_legacy = mock_func_factory(nominatim_db.tools.add_osm_data, 'add_data_from_file') @@ -54,7 +53,6 @@ class TestCliWithDb: assert mock_run_legacy.called == 1 - @pytest.mark.parametrize("name,oid", [('node', 12), ('way', 8), ('relation', 32)]) def test_cli_add_data_object_command(self, cli_call, mock_func_factory, name, oid): mock_run_legacy = mock_func_factory(nominatim_db.tools.add_osm_data, 'add_osm_object') @@ -62,8 +60,6 @@ class TestCliWithDb: assert mock_run_legacy.called == 1 - - def test_cli_add_data_tiger_data(self, cli_call, cli_tokenizer_mock, async_mock_func_factory): mock = async_mock_func_factory(nominatim_db.tools.tiger_data, 'add_tiger_data') @@ -80,7 +76,6 @@ class TestCliWithDb: assert mock_drop.called == 1 assert mock_flatnode.called == 1 - @pytest.mark.parametrize("params,do_bnds,do_ranks", [ ([], 2, 2), (['--boundaries-only'], 2, 0), @@ -89,11 +84,14 @@ class TestCliWithDb: def test_index_command(self, monkeypatch, async_mock_func_factory, table_factory, params, do_bnds, do_ranks): table_factory('import_status', 'indexed bool') - bnd_mock = async_mock_func_factory(nominatim_db.indexer.indexer.Indexer, 'index_boundaries') - rank_mock = async_mock_func_factory(nominatim_db.indexer.indexer.Indexer, 'index_by_rank') - postcode_mock = async_mock_func_factory(nominatim_db.indexer.indexer.Indexer, 'index_postcodes') - - monkeypatch.setattr(nominatim_db.indexer.indexer.Indexer, 'has_pending', + bnd_mock = async_mock_func_factory(nominatim_db.indexer.indexer.Indexer, + 'index_boundaries') + rank_mock = async_mock_func_factory(nominatim_db.indexer.indexer.Indexer, + 'index_by_rank') + postcode_mock = async_mock_func_factory(nominatim_db.indexer.indexer.Indexer, + 'index_postcodes') + + monkeypatch.setattr(nominatim_db.indexer.indexer.Indexer, 'has_pending', [False, True].pop) assert self.call_nominatim('index', *params) == 0 @@ -102,7 +100,6 @@ class TestCliWithDb: assert rank_mock.called == do_ranks assert postcode_mock.called == do_ranks - def test_special_phrases_wiki_command(self, mock_func_factory): func = mock_func_factory(nominatim_db.clicmd.special_phrases.SPImporter, 'import_phrases') @@ -110,7 +107,6 @@ class TestCliWithDb: assert func.called == 1 - def test_special_phrases_csv_command(self, src_dir, mock_func_factory): func = mock_func_factory(nominatim_db.clicmd.special_phrases.SPImporter, 'import_phrases') testdata = src_dir / 'test' / 'testdb' @@ -120,7 +116,6 @@ class TestCliWithDb: assert func.called == 1 - def test_special_phrases_csv_bad_file(self, src_dir): testdata = src_dir / 'something349053905.csv'