]> git.openstreetmap.org Git - nominatim.git/commitdiff
Added test and removed runlegacyscript
authorDarkshredder <srivastavayash58@gmail.com>
Wed, 10 Mar 2021 11:48:12 +0000 (17:18 +0530)
committerDarkshredder <srivastavayash58@gmail.com>
Wed, 10 Mar 2021 11:48:12 +0000 (17:18 +0530)
nominatim/cli.py
test/python/test_cli.py
test/python/test_tools_tiger_data.py [new file with mode: 0644]

index 7459711f9b43dd1c8e370c209d14e6c38989fa6d..b3d9eee6d735742ef61941379a00ca5477930d68 100644 (file)
@@ -13,6 +13,7 @@ from .tools.exec_utils import run_legacy_script, run_php_server
 from .errors import UsageError
 from . import clicmd
 from .clicmd.args import NominatimArgs
+from .tools import tiger_data
 
 LOG = logging.getLogger()
 
@@ -166,8 +167,11 @@ class UpdateAddData:
     @staticmethod
     def run(args):
         if args.tiger_data:
-            os.environ['NOMINATIM_TIGER_DATA_PATH'] = args.tiger_data
-            return run_legacy_script('setup.php', '--import-tiger-data', nominatim_env=args)
+            return tiger_data.add_tiger_data(args.config.get_libpq_dsn(),
+                                             args.tiger_data,
+                                             args.threads or 1,
+                                             args.config,
+                                             args.sqllib_dir)
 
         params = ['update.php']
         if args.file:
index 418f4bcfdeb7b1f4ded6a1b8c474e6c59c45d4d5..1f9cd06d4be7e0401e6162ac2cc60da2bea49149 100644 (file)
@@ -65,7 +65,6 @@ def test_cli_help(capsys):
 
 @pytest.mark.parametrize("command,script", [
                          (('special-phrases',), 'specialphrases'),
-                         (('add-data', '--tiger-data', 'tiger'), 'setup'),
                          (('add-data', '--file', 'foo.osm'), 'update'),
                          (('export',), 'export')
                          ])
diff --git a/test/python/test_tools_tiger_data.py b/test/python/test_tools_tiger_data.py
new file mode 100644 (file)
index 0000000..63e72e1
--- /dev/null
@@ -0,0 +1,25 @@
+"""
+Test for tiger data function
+"""
+from pathlib import Path
+
+import pytest
+
+from nominatim.tools import tiger_data, database_import
+
+
+@pytest.mark.parametrize("threads", (1, 5))
+def test_add_tiger_data(dsn, src_dir, def_config, monkeypatch,tmp_path,
+                        temp_db_cursor, threads, temp_db):
+    monkeypatch.setenv('NOMINATIM_DATABASE_MODULE_PATH', '.')
+    temp_db_cursor.execute('CREATE EXTENSION hstore')
+    temp_db_cursor.execute('CREATE EXTENSION postgis')
+    temp_db_cursor.execute('CREATE TABLE place (id INT)')
+
+    database_import.import_base_data('dbname=' + temp_db, src_dir / 'data',
+                                     ignore_partitions=False)
+    sqlfile = tmp_path / '1010.sql'
+    sqlfile.write_text("""INSERT INTO place values (1)""")
+    tiger_data.add_tiger_data(dsn, str(tmp_path), threads, def_config, src_dir / 'lib-sql')
+
+    assert temp_db_cursor.table_rows('place') == 1
\ No newline at end of file