]> git.openstreetmap.org Git - nominatim.git/blobdiff - test/python/cli/conftest.py
Merge remote-tracking branch 'upstream/master'
[nominatim.git] / test / python / cli / conftest.py
index 2013b16f57fe96a5efc0f137b7a7cb58bdfb95d3..09bfd3534ad4ee96032e49db1d18d70eee9d5f32 100644 (file)
@@ -1,3 +1,9 @@
+# SPDX-License-Identifier: GPL-2.0-only
+#
+# This file is part of Nominatim. (https://nominatim.org)
+#
+# Copyright (C) 2022 by the Nominatim developer community.
+# For a full list of authors see the git log.
 import pytest
 
 import nominatim.cli
@@ -19,6 +25,25 @@ class MockParamCapture:
         return self.return_value
 
 
+class DummyTokenizer:
+    def __init__(self, *args, **kwargs):
+        self.update_sql_functions_called = False
+        self.finalize_import_called = False
+        self.update_statistics_called = False
+        self.update_word_tokens_called = False
+
+    def update_sql_functions(self, *args):
+        self.update_sql_functions_called = True
+
+    def finalize_import(self, *args):
+        self.finalize_import_called = True
+
+    def update_statistics(self):
+        self.update_statistics_called = True
+
+    def update_word_tokens(self):
+        self.update_word_tokens_called = True
+
 
 @pytest.fixture
 def cli_call(src_dir):
@@ -28,11 +53,7 @@ def cli_call(src_dir):
     def _call_nominatim(*args):
         return nominatim.cli.nominatim(module_dir='MODULE NOT AVAILABLE',
                                        osm2pgsql_path='OSM2PGSQL NOT AVAILABLE',
-                                       phplib_dir=str(src_dir / 'lib-php'),
-                                       data_dir=str(src_dir / 'data'),
                                        phpcgi_path='/usr/bin/php-cgi',
-                                       sqllib_dir=str(src_dir / 'lib-sql'),
-                                       config_dir=str(src_dir / 'settings'),
                                        cli_args=args)
 
     return _call_nominatim
@@ -54,3 +75,14 @@ def mock_func_factory(monkeypatch):
         return mock
 
     return get_mock
+
+
+@pytest.fixture
+def cli_tokenizer_mock(monkeypatch):
+    tok = DummyTokenizer()
+    monkeypatch.setattr(nominatim.tokenizer.factory, 'get_tokenizer_for_db',
+                        lambda *args: tok)
+    monkeypatch.setattr(nominatim.tokenizer.factory, 'create_tokenizer',
+                        lambda *args: tok)
+
+    return tok