]> git.openstreetmap.org Git - nominatim.git/blobdiff - test/python/test_tools_exec_utils.py
add unit tests for new check_database code
[nominatim.git] / test / python / test_tools_exec_utils.py
index d9f80740b80ff1abc00fe25612299b8ff1c79382..283f486a9367fe40ac59aad79a628886d9c8a877 100644 (file)
@@ -7,7 +7,6 @@ import tempfile
 
 import pytest
 
-from nominatim.config import Configuration
 import nominatim.tools.exec_utils as exec_utils
 
 @pytest.fixture
@@ -18,12 +17,14 @@ def tmp_phplib_dir():
         yield Path(phpdir)
 
 @pytest.fixture
-def nominatim_env(tmp_phplib_dir):
+def nominatim_env(tmp_phplib_dir, def_config):
     class _NominatimEnv:
-        config = Configuration(None, Path(__file__) / '..' / '..' / '..' / 'settings')
+        config = def_config
         phplib_dir = tmp_phplib_dir
         data_dir = Path('data')
         project_dir = Path('.')
+        sqllib_dir = Path('lib-sql')
+        config_dir = Path('settings')
         module_dir = 'module'
         osm2pgsql_path = 'osm2pgsql'
 
@@ -64,8 +65,8 @@ def test_run_legacy_return_dont_throw_on_success(nominatim_env, test_script):
     assert 0 == exec_utils.run_legacy_script(fname, nominatim_env=nominatim_env,
                                              throw_on_fail=True)
 
-def test_run_legacy_use_given__module_path(nominatim_env, test_script):
-    fname = test_script("exit($_SERVER['NOMINATIM_DATABASE_MODULE_PATH'] == 'module' ? 0 : 23);")
+def test_run_legacy_use_given_module_path(nominatim_env, test_script):
+    fname = test_script("exit($_SERVER['NOMINATIM_DATABASE_MODULE_PATH'] == '' ? 0 : 23);")
 
     assert 0 == exec_utils.run_legacy_script(fname, nominatim_env=nominatim_env)
 
@@ -100,3 +101,12 @@ def test_run_api_with_extra_env(tmp_project_dir):
     extra_env = dict(SCRIPT_FILENAME=str(tmp_project_dir / 'website' / 'test.php'))
     assert 0 == exec_utils.run_api_script('badname', tmp_project_dir,
                                           extra_env=extra_env)
+
+
+### run_osm2pgsql
+
+def test_run_osm2pgsql():
+    exec_utils.run_osm2pgsql(dict(osm2pgsql='echo', append=False, flatnode_file=None,
+                                  dsn='dbname=foobar', threads=1, osm2pgsql_cache=500,
+                                  osm2pgsql_style='./my.style',
+                                  import_file='foo.bar'))