X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/9086a794a1ca9ed08d66c9aca5cea25d1f6006bf..b88b952f56d6ac1eec46202ba05a04fcd12575d9:/test/python/conftest.py?ds=sidebyside diff --git a/test/python/conftest.py b/test/python/conftest.py index 4b7cccc3..4b9749c0 100644 --- a/test/python/conftest.py +++ b/test/python/conftest.py @@ -5,6 +5,7 @@ from pathlib import Path import psycopg2 import psycopg2.extras import pytest +import tempfile SRC_DIR = Path(__file__) / '..' / '..' / '..' @@ -32,8 +33,6 @@ class _TestingCursor(psycopg2.extras.DictCursor): """ Execute a query and return the result as a set of tuples. """ self.execute(sql, params) - if self.rowcount == 1: - return set(tuple(self.fetchone())) return set((tuple(row) for row in self)) @@ -127,12 +126,24 @@ def table_factory(temp_db_cursor): @pytest.fixture def def_config(): - return Configuration(None, SRC_DIR.resolve() / 'settings') + cfg = Configuration(None, SRC_DIR.resolve() / 'settings') + cfg.set_libdirs(module='.', osm2pgsql='.', + php=SRC_DIR / 'lib-php', + sql=SRC_DIR / 'lib-sql', + data=SRC_DIR / 'data') + return cfg @pytest.fixture def src_dir(): return SRC_DIR.resolve() +@pytest.fixture +def tmp_phplib_dir(): + with tempfile.TemporaryDirectory() as phpdir: + (Path(phpdir) / 'admin').mkdir() + + yield Path(phpdir) + @pytest.fixture def status_table(temp_db_conn): """ Create an empty version of the status table and @@ -269,7 +280,11 @@ def osm2pgsql_options(temp_db): main_data='', main_index='')) @pytest.fixture -def sql_preprocessor(temp_db_conn, tmp_path, def_config, monkeypatch, table_factory): +def sql_preprocessor(temp_db_conn, tmp_path, monkeypatch, table_factory): monkeypatch.setenv('NOMINATIM_DATABASE_MODULE_PATH', '.') table_factory('country_name', 'partition INT', (0, 1, 2)) - return SQLPreprocessor(temp_db_conn, def_config, tmp_path) + cfg = Configuration(None, SRC_DIR.resolve() / 'settings') + cfg.set_libdirs(module='.', osm2pgsql='.', php=SRC_DIR / 'lib-php', + sql=tmp_path, data=SRC_DIR / 'data') + + return SQLPreprocessor(temp_db_conn, cfg)