]> git.openstreetmap.org Git - nominatim.git/blobdiff - test/bdd/steps/steps_osm_data.py
enable flake for bdd test code
[nominatim.git] / test / bdd / steps / steps_osm_data.py
index 2d17c1a0e1f2eacd68ad24a41037f23611859665..69f7199473f787972cd739a47f4945cc40c44b5a 100644 (file)
@@ -1,32 +1,32 @@
-# SPDX-License-Identifier: GPL-2.0-only
+# SPDX-License-Identifier: GPL-3.0-or-later
 #
 # This file is part of Nominatim. (https://nominatim.org)
 #
-# Copyright (C) 2022 by the Nominatim developer community.
+# Copyright (C) 2024 by the Nominatim developer community.
 # For a full list of authors see the git log.
 import tempfile
 import random
 import os
 from pathlib import Path
 
-from nominatim.tools.exec_utils import run_osm2pgsql
-from nominatim.tools.replication import run_osm2pgsql_updates
+from nominatim_db.tools.exec_utils import run_osm2pgsql
+from nominatim_db.tools.replication import run_osm2pgsql_updates
 
 from geometry_alias import ALIASES
 
+
 def get_osm2pgsql_options(nominatim_env, fname, append):
     return dict(import_file=fname,
-                osm2pgsql=str(nominatim_env.build_dir / 'osm2pgsql' / 'osm2pgsql'),
+                osm2pgsql='osm2pgsql',
                 osm2pgsql_cache=50,
                 osm2pgsql_style=str(nominatim_env.get_test_config().get_import_style_file()),
-                osm2pgsql_style_path=nominatim_env.get_test_config().config_dir,
+                osm2pgsql_style_path=nominatim_env.get_test_config().lib_dir.lua,
                 threads=1,
                 dsn=nominatim_env.get_libpq_dsn(),
                 flatnode_file='',
                 tablespaces=dict(slim_data='', slim_index='',
                                  main_data='', main_index=''),
-                append=append
-               )
+                append=append)
 
 
 def write_opl_file(opl, grid):
@@ -41,14 +41,14 @@ def write_opl_file(opl, grid):
             if line.startswith('n') and line.find(' x') < 0:
                 coord = grid.grid_node(int(line[1:].split(' ')[0]))
                 if coord is None:
-                    coord = (random.random() * 360 - 180,
-                             random.random() * 180 - 90)
+                    coord = (random.uniform(-180, 180), random.uniform(-90, 90))
                 line += " x%f y%f" % coord
             fd.write(line.encode('utf-8'))
             fd.write(b'\n')
 
         return fd.name
 
+
 @given('the lua style file')
 def lua_style_file(context):
     """ Define a custom style file to use for the import.
@@ -91,7 +91,7 @@ def define_node_grid(context, grid_step, origin):
 @when(u'loading osm data')
 def load_osm_file(context):
     """
-    Load the given data into a freshly created test data using osm2pgsql.
+    Load the given data into a freshly created test database using osm2pgsql.
     No further indexing is done.
 
     The data is expected as attached text in OPL format.
@@ -103,13 +103,14 @@ def load_osm_file(context):
     finally:
         os.remove(fname)
 
-    ### reintroduce the triggers/indexes we've lost by having osm2pgsql set up place again
+    # reintroduce the triggers/indexes we've lost by having osm2pgsql set up place again
     cur = context.db.cursor()
     cur.execute("""CREATE TRIGGER place_before_delete BEFORE DELETE ON place
                     FOR EACH ROW EXECUTE PROCEDURE place_delete()""")
     cur.execute("""CREATE TRIGGER place_before_insert BEFORE INSERT ON place
                    FOR EACH ROW EXECUTE PROCEDURE place_insert()""")
-    cur.execute("""CREATE UNIQUE INDEX idx_place_osm_unique on place using btree(osm_id,osm_type,class,type)""")
+    cur.execute("""CREATE UNIQUE INDEX idx_place_osm_unique ON place
+                   USING btree(osm_id,osm_type,class,type)""")
     context.db.commit()
 
 
@@ -133,6 +134,7 @@ def update_from_osm_file(context):
     finally:
         os.remove(fname)
 
+
 @when('indexing')
 def index_database(context):
     """