switch tests to ICU tokenizer as default

This commit is contained in:
Sarah Hoffmann
2022-05-10 14:54:50 +02:00
parent b93ef23d3f
commit adeebec32a
8 changed files with 13 additions and 12 deletions

View File

@@ -211,11 +211,6 @@ def osmline_table(temp_db_with_extensions, table_factory):
country_code VARCHAR(2)""")
@pytest.fixture
def word_table(temp_db_conn):
return mocks.MockWordTable(temp_db_conn)
@pytest.fixture
def sql_preprocessor_cfg(tmp_path, table_factory, temp_db_with_extensions):
table_factory('country_name', 'partition INT', ((0, ), (1, ), (2, )))

View File

@@ -14,7 +14,7 @@ import psycopg2.extras
from nominatim.db import properties
# This must always point to the mock word table for the default tokenizer.
from mock_legacy_word_table import MockLegacyWordTable as MockWordTable
from mock_icu_word_table import MockIcuWordTable as MockWordTable
class MockPlacexTable:
""" A placex table for testing.

View File

@@ -179,7 +179,7 @@ def test_truncate_database_tables(temp_db_conn, temp_db_cursor, table_factory, w
@pytest.mark.parametrize("threads", (1, 5))
def test_load_data(dsn, place_row, placex_table, osmline_table,
word_table, temp_db_cursor, threads):
temp_db_cursor, threads):
for func in ('precompute_words', 'getorcreate_housenumber_id', 'make_standard_name'):
temp_db_cursor.execute(f"""CREATE FUNCTION {func} (src TEXT)
RETURNS TEXT AS $$ SELECT 'a'::TEXT $$ LANGUAGE SQL

View File

@@ -14,6 +14,8 @@ from nominatim.tools import migration
from nominatim.errors import UsageError
import nominatim.version
from mock_legacy_word_table import MockLegacyWordTable
class DummyTokenizer:
def update_sql_functions(self, config):
@@ -26,6 +28,10 @@ def postprocess_mock(monkeypatch):
monkeypatch.setattr(migration.tokenizer_factory, 'get_tokenizer_for_db',
lambda *args: DummyTokenizer())
@pytest.fixture
def legacy_word_table(temp_db_conn):
return MockLegacyWordTable(temp_db_conn)
def test_no_migration_old_versions(temp_db_with_extensions, table_factory, def_config):
table_factory('country_name', 'name HSTORE, country_code TEXT')
@@ -156,7 +162,7 @@ def test_add_nominatim_property_table_repeat(temp_db_conn, temp_db_cursor,
def test_change_housenumber_transliteration(temp_db_conn, temp_db_cursor,
word_table, placex_table):
legacy_word_table, placex_table):
placex_table.add(housenumber='3A')
temp_db_cursor.execute("""CREATE OR REPLACE FUNCTION make_standard_name(name TEXT)

View File

@@ -65,7 +65,7 @@ def tokenizer():
return dummy_tokenizer.DummyTokenizer(None, None)
@pytest.fixture
def postcode_table(temp_db_conn, placex_table, word_table):
def postcode_table(temp_db_conn, placex_table):
return MockPostcodeTable(temp_db_conn)